#
59831f80 |
| 23-Oct-2024 |
Daniel Stenberg |
tool_operate: split up the huge single_transfer into sub functions - split up in a few smaller and easier to read functions - simplify several sections - avoid superfluous extra allo
tool_operate: split up the huge single_transfer into sub functions - split up in a few smaller and easier to read functions - simplify several sections - avoid superfluous extra allocations - remove unused debug code Closes #15385
show more ...
|
#
fbf5d507 |
| 18-Sep-2024 |
Daniel Stenberg |
lib/src: white space edits to comply better with code style ... as checksrc now finds and complains about these. Closes #14921
|
#
c0450488 |
| 21-Aug-2024 |
Viktor Szakats |
src: fix potential macro confusion in cmake unity builds Sources used `lib/curlx.h` with both `ENABLE_CURLX_PRINTF` set and unset before including it. In a cmake "unity" batch w
src: fix potential macro confusion in cmake unity builds Sources used `lib/curlx.h` with both `ENABLE_CURLX_PRINTF` set and unset before including it. In a cmake "unity" batch where the first included source had it unset, the next sources did not get the macros requested with `ENABLE_CURLX_PRINTF` because `lib/curl.x` had already been included without them. Fix it by by making the macros enabled permanently and globally for internal sources, and dropping `ENABLE_CURLX_PRINTF`. This came up while testing unity builds with smaller batches. The full, default unity build where all `src` is bundled up in a single unit, was not affected. Fixes: ``` $ cmake -B build -DCMAKE_UNITY_BUILD=ON -DCMAKE_UNITY_BUILD_BATCH_SIZE=15 $ make -C build ... curl/src/tool_getparam.c: In function ‘getparameter’: curl/src/tool_getparam.c:2409:11: error: implicit declaration of function ‘msnprintf’; did you mean ‘vsnprintf’? [-Wimplicit-function-declaration] 2409 | msnprintf(buffer, sizeof(buffer), "%" CURL_FORMAT_CURL_OFF_T "-", | ^~~~~~~~~ | vsnprintf curl/src/tool_getparam.c:2409:11: warning: nested extern declaration of ‘msnprintf’ [-Wnested-externs] [...] ``` Reported-by: Daniel Stenberg Bug: https://github.com/curl/curl/pull/14626#issuecomment-2301663491 Closes #14632
show more ...
|
#
56032044 |
| 15-Aug-2024 |
Daniel Stenberg |
curl: fix the -w urle.* variables urle.scheme, urle.user, urle.password and urle.options mistakenly operated on the original URL instead of the *effective* (last) URL. Add test
curl: fix the -w urle.* variables urle.scheme, urle.user, urle.password and urle.options mistakenly operated on the original URL instead of the *effective* (last) URL. Add test 474 to verify. Reported-by: Gruber Glass Fixes #14550 Closes #14560
show more ...
|
#
13650419 |
| 15-Jul-2024 |
Alex Snast |
getinfo: add CURLINFO_POSTTRANSFER_TIME_T Returns the time, in microseconds, from the start until the last byte is sent by libcurl (i.e. the request is sent off). Closes #14189
|
#
c074ba64 |
| 01-Jul-2024 |
Daniel Stenberg |
code: language cleanup in comments Based on the standards and guidelines we use for our documentation. - expand contractions (they're => they are etc) - host name = > hostname
code: language cleanup in comments Based on the standards and guidelines we use for our documentation. - expand contractions (they're => they are etc) - host name = > hostname - file name => filename - user name = username - man page => manpage - run-time => runtime - set-up => setup - back-end => backend - a HTTP => an HTTP - Two spaces after a period => one space after period Closes #14073
show more ...
|
#
d69ee3ef |
| 07-Jun-2024 |
Daniel Stenberg |
curl: support -w '%{num_retries} Suggested-by: Jay Guerette Ref: https://github.com/curl/curl/discussions/13901 Closes #13910
|
#
0a3c78f6 |
| 10-Jun-2024 |
Daniel Stenberg |
tool_writeout: get certinfo only when needing it Removes a fairly expensive libcurl call when not necessary Closes #13914
|
#
4464c9f2 |
| 10-Jun-2024 |
Daniel Stenberg |
tool_writeout: bsearch the variable name As the list of variable names grows, doing a simple loop to find the name get increasingly worse. This switches to a bsearch. Also: do a
tool_writeout: bsearch the variable name As the list of variable names grows, doing a simple loop to find the name get increasingly worse. This switches to a bsearch. Also: do a case sensitive check for the variable name. The names have not been documented to be case insensitive and there is no point in having them so. Closes #13914
show more ...
|
#
1a895383 |
| 13-May-2024 |
Viktor Szakats |
src: tidy up types, add necessary casts Cherry-picked from #13489 Closes #13614
|
#
ac208ccf |
| 22-Feb-2024 |
Daniel Stenberg |
write-out: add '%{proxy_used}' Returns 1 if the previous transfer used a proxy, otherwise 0. Useful to for example determine if a `NOPROXY` pattern matched the hostname or not.
write-out: add '%{proxy_used}' Returns 1 if the previous transfer used a proxy, otherwise 0. Useful to for example determine if a `NOPROXY` pattern matched the hostname or not. Extended test 970 and 972
show more ...
|
#
e5bb88b8 |
| 28-Sep-2023 |
Viktor Szakats |
tool: use our own stderr variable Earlier this year we changed our own stderr variable to use the standard name `stderr` (to avoid bugs where someone is using `stderr` instead of the
tool: use our own stderr variable Earlier this year we changed our own stderr variable to use the standard name `stderr` (to avoid bugs where someone is using `stderr` instead of the curl-tool specific variable). This solution needed to override the standard `stderr` symbol via the preprocessor. This in turn didn't play well with unity builds and caused curl tool to crash or stay silent due to an uninitialized stderr. This was a hard to find issue, fixed by manually breaking out one file from the unity sources. To avoid two these two tricks, this patch implements a different solution: Restore using our own local variable for our stderr output and leave `stderr` as-is. To avoid using `stderr` by mistake, add a `checksrc` rule (based on logic we already used in lib for `strerror`) that detects any `stderr` use in `src` and points to using our own variable instead: `tool_stderr`. Follow-up to 06133d3e9b8aeb9e9ca0b3370c246bdfbfc8619e Follow-up to 2f17a9b654121dd1ecf4fc043c6d08a9da3522db Closes #11958
show more ...
|
#
1032f56e |
| 30-Jul-2023 |
Daniel Stenberg |
curl: make %output{} in -w specify a file to write to It can be used multiple times. Use %output{>>name} to append. Add docs. Test 990 and 991 verify. Idea: #11400 Sugg
curl: make %output{} in -w specify a file to write to It can be used multiple times. Use %output{>>name} to append. Add docs. Test 990 and 991 verify. Idea: #11400 Suggested-by: ed0d2b2ce19451f2 Closes #11416
show more ...
|
#
e024d566 |
| 23-May-2023 |
Stefan Eissing |
lib: add CURLINFO_CONN_ID and CURLINFO_XFER_ID - add an `id` long to Curl_easy, -1 on init - once added to a multi (or its own multi), it gets a non-negative number assigned by the
lib: add CURLINFO_CONN_ID and CURLINFO_XFER_ID - add an `id` long to Curl_easy, -1 on init - once added to a multi (or its own multi), it gets a non-negative number assigned by the connection cache - `id` is unique among all transfers using the same cache until reaching LONG_MAX where it will wrap around. So, not unique eternally. - CURLINFO_CONN_ID returns the connection id attached to data or, if none present, data->state.lastconnect_id - variables and type declared in tool for write out Closes #11185
show more ...
|
#
808cb317 |
| 04-Apr-2023 |
Daniel Stenberg |
tool_writeout: add URL component variables Output specific components from the used URL. The following variables are added for this purpose: url.scheme, url.user, url.password
tool_writeout: add URL component variables Output specific components from the used URL. The following variables are added for this purpose: url.scheme, url.user, url.password, url.options, url.host, url.port, url.path, url.query, url.fragment, url.zoneid Add the following for outputting parts of the "effective URL": urle.scheme, urle.user, urle.password, urle.options, urle.host, urle.port, urle.path, urle.query, urle.fragment, urle.zoneid Added test 423 and 424 to verify. Closes #10853
show more ...
|
#
2f17a9b6 |
| 04-Mar-2023 |
Jay Satiro |
tool: improve --stderr handling - freopen stderr with the user-specified file (--stderr file) instead of using a separate 'errors' stream. - In tool_setup.h override stdio.h's
tool: improve --stderr handling - freopen stderr with the user-specified file (--stderr file) instead of using a separate 'errors' stream. - In tool_setup.h override stdio.h's stderr macro as global variable tool_stderr. Both freopen and overriding the stderr macro are necessary because if the user-specified filename is "-" then stdout is assigned to tool_stderr and no freopen takes place. See the PR for more information. Ref: https://github.com/curl/curl/issues/10491 Closes https://github.com/curl/curl/pull/10673
show more ...
|
#
d9b7f6e7 |
| 20-Feb-2023 |
Jay Satiro |
curl: make -w's %{stderr} use the file set with --stderr Reported-by: u20221022 on github Fixes #10491 Closes #10569
|
#
2bc1d775 |
| 02-Jan-2023 |
Daniel Stenberg |
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - save
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - saves us from pointless churn - git keeps history for us - the year range is kept in COPYING checksrc is updated to allow non-year using copyright statements Closes #10205
show more ...
|
#
c6aa19c1 |
| 27-Dec-2022 |
Daniel Stenberg |
writeout: add %{certs} and %{num_certs} Let users get the server certificate chain using the command line Closes #10019
|
#
7be53774 |
| 30-Aug-2022 |
Daniel Stenberg |
tool_operate: reduce errorbuffer allocs - parallel transfers: only alloc and keep errorbuffers in memory for actual "live" transfers and not for the ones in the pending queue
tool_operate: reduce errorbuffer allocs - parallel transfers: only alloc and keep errorbuffers in memory for actual "live" transfers and not for the ones in the pending queue - serial transfers: reuse the same fixed buffer for all transfers, not allocated at all. Closes #9394
show more ...
|
#
ddfd41c9 |
| 20-Jul-2022 |
Daniel Stenberg |
tool_writeout: fix enumerated type mixed with another type Closes #9179
|
#
0ef4f087 |
| 13-Jul-2022 |
Daniel Stenberg |
curl: writeout: fix repeated header outputs The function stored a terminating zero into the buffer for convenience, but when on repeated calls that would cause problems. Starting now, th
curl: writeout: fix repeated header outputs The function stored a terminating zero into the buffer for convenience, but when on repeated calls that would cause problems. Starting now, the passed in buffer is not modified. Reported-by: highmtworks on github Fixes #9150 Closes #9152
show more ...
|
#
ad9bc597 |
| 17-May-2022 |
max.mehl |
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the file `.reuse/dep5`. This commit also adds a Github workflow to check pull requests and adapts copyright.pl to the changes. Closes #8869
show more ...
|
#
e7793cb5 |
| 25-Mar-2022 |
Daniel Stenberg |
curl/header_json: output the header names in lowercase To better allow json[“header”]. Reported-by: Peter Korsgaard Bug: https://daniel.haxx.se/blog/2022/03/24/easier-header-pic
curl/header_json: output the header names in lowercase To better allow json[“header”]. Reported-by: Peter Korsgaard Bug: https://daniel.haxx.se/blog/2022/03/24/easier-header-picking-with-curl/comment-page-1/#comment-25878 Closes #8633
show more ...
|
#
4133a69f |
| 17-Mar-2022 |
Daniel Stenberg |
curl: add %{header_json} support in -w handling Outputs all response headers as a JSON object.
|