Daniel Stenberg
e71542a9d9
curl_path: remove conn->data use
...
Closes #6487
2021-01-19 17:08:49 +01:00
Daniel Stenberg
a304051620
lib: more conn->data cleanups
...
Closes #6479
2021-01-19 09:14:51 +01:00
Daniel Stenberg
215db086e0
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
2021-01-17 23:56:09 +01:00
Daniel Stenberg
057cb05b4b
libssh2: fix "Value stored to 'readdir_len' is never read"
...
Detected by scan-build
2021-01-11 12:32:58 +01:00
Emil Engler
725ec470e2
language: s/behaviour/behavior/g
...
We currently use both spellings the british "behaviour" and the american
"behavior". However "behavior" is more used in the project so I think
it's worth dropping the british name.
Closes #6395
2021-01-02 23:35:59 +01:00
Daniel Stenberg
aba01da639
failf: remove newline from formatting strings
...
... as failf adds one itself.
Also: add an assert() to failf() that triggers on a newline in the
format string!
Closes #6365
2020-12-25 23:42:16 +01:00
Rikard Falkeborn
920f49a20b
infof/failf calls: fix format specifiers
...
Update a few format specifiers to match what is being printed.
Closes #6241
2020-11-24 13:18:41 +01:00
Daniel Stenberg
a95a6ce6b8
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
2020-11-23 16:16:16 +01:00
Daniel Stenberg
4d2f800677
curl.se: new home
...
Closes #6172
2020-11-04 23:59:47 +01:00
Daniel Stenberg
d70a5b5a0f
sendf: move the verbose-check into Curl_debug
...
Saves us from having the same check done everywhere.
Closes #6159
2020-11-02 22:49:36 +01:00
Daniel Stenberg
9a844625c4
libssh2: fix transport over HTTPS proxy
...
The fix in #6021 was not enough. This fix makes sure SCP/SFTP content
can also be transfered over a HTTPS proxy.
Fixes #6113
Closes #6128
2020-10-29 09:31:31 +01:00
Baruch Siach
ddcc110bfc
libssh2: fix build with disabled proxy support
...
Build breaks because the http_proxy field is missing:
vssh/libssh2.c:3119:10: error: 'struct connectdata' has no member named 'http_proxy'
Regression from #6021 , shipped in curl 7.73.0
Closes #6125
2020-10-26 09:18:35 +01:00
Daniel Stenberg
4bfca0a807
libssh2: require version 1.0 or later
...
... and simplify the code accordingly. libssh2 version 1.0 was released
in April 2009.
Closes #6116
2020-10-22 16:45:40 +02:00
Daniel Stenberg
edfb6168e9
libssh2: handle the SSH protocols done over HTTPS proxy
...
Reported-by: Robin Douine
Fixes #4295
Closes #6021
2020-09-29 07:50:07 +02:00
Daniel Stenberg
6434a73984
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
2020-09-21 23:30:16 +02:00
cbe
a27af8b510
libssh2: pass on the error from ssh_force_knownhost_key_type
...
Closes #5909
2020-09-03 18:02:27 +02:00
Michael Musset
ebc6c54c74
sftp: add the option CURLKHSTAT_FINE_REPLACE
...
Replace the old fingerprint of the host with a new.
Closes #5685
2020-08-24 17:26:08 +02:00
COFFEETALES
fab5185275
sftp: add new quote commands 'atime' and 'mtime'
...
Closes #5810
2020-08-24 09:01:56 +02:00
Daniel Stenberg
43c68d842e
libssh2: s/ssherr/sftperr/
...
The debug output used ssherr instead of sftperr which not only outputs
the wrong error code but also casues a warning on Windows.
Follow-up to 7370b4e39f
Reported-by: Gisle Vanem
Bug: 7370b4e39f (r41334700)
Closes #5799
2020-08-10 14:34:01 +02:00
Daniel Stenberg
7370b4e39f
libssh2: keep sftp errors as 'unsigned long'
...
Remove weird work-around for storing the SFTP errors as int instead of
the "unsigned long" that libssh2 actually returns for SFTP errors.
Closes #5534
2020-06-08 08:38:48 +02:00
Daniel Stenberg
842f73de58
timeouts: change millisecond timeouts to timediff_t from time_t
...
For millisecond timers we like timediff_t better. Also, time_t can be
unsigned so returning a negative value doesn't work then.
Closes #5479
2020-05-30 23:10:57 +02:00
Daniel Stenberg
733a39a907
libssh2: improved error output for wrong quote syntax
...
Reported-by: Werner Stolz
Closes #5474
2020-05-29 09:35:52 +02:00
Estanislau Augé-Pujadas
18e63b1679
Revert "ssh: ignore timeouts during disconnect"
...
This reverts commit f31760e63b
. Shipped in
curl 7.54.1.
Bug: https://curl.haxx.se/mail/lib-2020-05/0068.html
Closes #5465
2020-05-27 08:13:13 +02:00
Daniel Stenberg
d23cc224e6
cleanup: use a single space after equals sign in assignments
2020-05-26 08:28:38 +02:00
Daniel Stenberg
44645ca8b0
libssh2: convert over to use dynbuf
...
In my very basic test that lists sftp://127.0.0.1/tmp/, this patched
code makes 161 allocations compared to 194 in git master. A 17%
reduction.
Closes #5336
2020-05-05 14:54:07 +02:00
Daniel Stenberg
df2093d293
libssh2: set the expected total size in SCP upload init
...
... as otherwise the progress callback gets called without that
information, making the progress meter have less info.
Reported-by: Murugan Balraj
Bug: https://curl.haxx.se/mail/archive-2020-05/0000.html
Closes #5317
2020-05-02 16:38:48 +02:00
Jim Fuller
e96fe70cab
sftp: fix segfault regression introduced by #4747
...
This fix adds a defensive check for the case where the char *name in
struct libssh2_knownhost is NULL
Fixes #5041
Closes #5062
2020-03-09 15:01:40 +01:00
Daniel Stenberg
0c76795caf
cleanup: comment typos
...
Spotted by 'codespell'
Closes #4957
2020-02-21 08:38:00 +01:00
Marcel Raad
6f69edf962
libssh2: fix variable type
...
This led to a conversion warning on 64-bit MinGW, which has 32-bit
`long` but 64-bit `size_t`.
Closes https://github.com/curl/curl/pull/4823
2020-01-16 10:03:59 +01:00
Daniel Stenberg
29babeafec
misc: Copyright year out of date, should be 2020
...
Follow-up to recent commits
[skip ci]
2020-01-12 16:55:50 +01:00
Santino Keupp
272282a054
libssh2: add support for forcing a hostkey type
...
- Allow forcing the host's key type found in the known_hosts file.
Currently, curl (with libssh2) does not take keys from your known_hosts
file into account when talking to a server. With this patch the
known_hosts file will be searched for an entry matching the hostname
and, if found, libssh2 will be told to claim this key type from the
server.
Closes https://github.com/curl/curl/pull/4747
2020-01-11 19:17:33 -05:00
Santino Keupp
1d2d3feb21
libssh2: add support for ECDSA and ed25519 knownhost keys
...
... if a new enough libssh2 version is present.
Source: https://curl.haxx.se/mail/archive-2019-12/0023.html
Co-Authored-by: Daniel Stenberg
Closes #4714
2019-12-15 23:03:39 +01:00
Marcel Raad
69d95b6d4c
lib: silence conversion warnings
...
Closes https://github.com/curl/curl/pull/4444
2019-10-01 10:47:37 +02:00
Daniel Stenberg
7d5524500d
libssh2: part of conditional expression is always true: !result
...
Fixes warning detected by PVS-Studio
Fixes #4374
2019-09-20 08:07:52 +02:00
Daniel Stenberg
ea28a6cb2f
ssh: add a generic Curl_ssh_version function for SSH backends
...
Closes #4235
2019-08-17 16:57:58 +02:00
Daniel Stenberg
d6dea75af7
vssh: move ssh init/cleanup functions into backend code
2019-08-17 16:57:55 +02:00
Daniel Stenberg
5b2d703fe5
vssh: create directory for SSH backend code
2019-08-17 16:57:55 +02:00