Age | Commit message (Collapse) | Author |
|
Support the SMTPUTF8 extension when sending mailbox information in the
MAIL command (FROM and AUTH parameters). Non-ASCII domain names will
be ACE encoded, if IDN is supported, whilst non-ASCII characters in
the local address part are passed to the server.
Reported-by: ygthien on github
Fixes #4828
|
|
|
|
|
|
|
|
Non-ASCII host names will be ACE encoded if IDN is supported.
|
|
|
|
|
|
|
|
The dot character between the host and the tld was not being escaped,
which meant it specified a match of 'any' character rather than an
explicit dot separator.
Additionally removed the dot character from the host name as it allowed
the following to be specified as a valid address in our test cases:
<bad@example......com>
Both are typos from 98f7ca7 and 8880f84 :(
I can't remember whether my intention was to allow sub-domains to be
specified in the host or not with these additional dots, but by placing
it outside of the host means it can only be specified once per domain
and by placing a + after the new grouping support for sub-domains is
kept.
Closes #4912
|
|
Closes #4973
|
|
|
|
Closes #4970
|
|
This keeps the interface the same as md5 and sha256.
|
|
Typo from 81c37124.
|
|
As we have our own MD5 implementation use the MD5 wrapper to remove the
TLS dependency.
Closes #4967
|
|
|
|
Follow up to 2b5b37cb. Local static functions do not require the Curl
prefix.
|
|
Follow up to 2b5b37c.
Closes #4968
|
|
* Don't include 'struct' in the gcrypt MD4_CTX typedef
* The call to gcry_md_read() should use a dereferenced ctx
* The call to gcry_md_close() should use a dereferenced ctx
Additional minor whitespace issue in the USE_WIN32_CRYPTO code.
Closes #4959
|
|
|
|
To simplify our code and since earlier versions lack important function
calls libcurl needs to function correctly.
nghttp2 1.12.0 was relased on June 26, 2016.
Closes #4961
|
|
Follow-up from 41fcb4f609
|
|
TLS servers may request a certificate from the client. This request
includes a list of 0 or more acceptable issuer DNs. The client may use
this list to determine which certificate to send. GnuTLS's default
behavior is to not send a client certificate if there is no
match. However, OpenSSL's default behavior is to send the configured
certificate. The `GNUTLS_FORCE_CLIENT_CERT` flag mimics OpenSSL
behavior.
Authored-by: jethrogb on github
Fixes #1411
Closes #4958
|
|
Closes #4960
|
|
Spotted by 'codespell'
Closes #4957
|
|
Whilst lib\md4.c used this pre-processor, lib\md5.c and
src\tool_metalink.c did not and simply relied on the WIN32
pre-processor directive.
Reviewed-by: Marcel Raad
Closes #4955
|
|
As they were added primarily for debugging, they provide little use for
users.
Closes #4951
|
|
... so that we know we got the whole and not a partial line.
Also, changed the formatting of the fields away from a table again since
the table format requires a github-markdown tool version that we don't
run on the web server atm.
Reported-by: Sunny Bean
Fixes #4946
Closes #4947
|
|
Follow-up to 1fc0617dcc
|
|
- Change tool_util.c tvnow() for Windows to match more closely to
timeval.c Curl_now().
- Create a win32 init function for the tool, since some initialization
is required for the tvnow() changes.
Prior to this change the monotonic time function used by curl in Windows
was determined at build-time and not runtime. That was a problem because
when curl was built targeted for compatibility with old versions of
Windows (eg _WIN32_WINNT < 0x0600) it would use GetTickCount which wraps
every 49.7 days that Windows has been running.
This change makes curl behave similar to libcurl's tvnow function, which
determines at runtime whether the OS is Vista+ and if so calls
QueryPerformanceCounter instead. (Note QueryPerformanceCounter is used
because it has higher resolution than the more obvious candidate
GetTickCount64). The changes to tvnow are basically a copy and paste but
the types in some cases are different.
Ref: https://github.com/curl/curl/issues/3309
Closes https://github.com/curl/curl/pull/4847
|
|
Follow-up to 4a4b63daa
Reported-by: Peter Piekarski
Bug: https://github.com/curl/curl/commit/4a4b63daaa01ef59b131d91e8e6e6dfe275c0f08#r37351330
|
|
to be in sync with the description above
Reported-by: Joonas Kuorilehto
Fixes #4943
Closes #4945
|
|
|
|
... by writing the file to temp name then rename to the final when done.
Assisted-by: Jay Satiro
Fixes #4936
Closes #4942
|
|
And make the cookie save function use it.
|
|
Saves the file as "[filename].[8 random hex digits].tmp" and renames
away the extension when done.
Co-authored-by: Jay Satiro
Reported-by: Mike Frysinger
Fixes #4914
Closes #4926
|
|
|
|
Removes two entries from KNOWN_BUGS.
Closes #4907
|
|
Otherwise, a very fast single transfer ricks starving out other
concurrent transfers.
Closes #4927
|
|
This was an array indexed with sockindex but it was only ever used for
the secondary socket.
Closes #4929
|
|
Prior to this change the example would try to import cookies from stdin,
which wasn't what was intended.
Reported-by: 3dyd@users.noreply.github.com
Fixes https://github.com/curl/curl/issues/4930
|
|
Closes #4452
|
|
Closes #4108
|
|
Because of:
brotli/decode.h:204:33: error: variable length array used [-Werror,-Wvla]
const uint8_t encoded_buffer[BROTLI_ARRAY_PARAM(encoded_size)],
Closes #4925
|
|
Follow up to 9dc350b6.
|
|
- Deduplicate GetEnv() code.
- On Windows change ultimate call to use Windows API
GetEnvironmentVariable() instead of C runtime getenv().
Prior to this change both libcurl and the tool had their own GetEnv
which over time diverged. Now the tool's GetEnv is a wrapper around
curl_getenv (libcurl API function which is itself a wrapper around
libcurl's GetEnv).
Furthermore this change fixes a bug in that Windows API
GetEnvironmentVariable() is called instead of C runtime getenv() to get
the environment variable since some changes aren't always visible to the
latter.
Reported-by: Christoph M. Becker
Fixes https://github.com/curl/curl/issues/4774
Closes https://github.com/curl/curl/pull/4863
|
|
Follow-up to 1c4fa67e8a8fcf6
|
|
STRERROR_LEN is the constant used throughout the library to set the size
of the buffer on the stack that the curl strerror functions write to.
Prior to this change some extended length Windows error messages could
be truncated.
Closes https://github.com/curl/curl/pull/4920
|
|
- Do not say that conn->data is "cleared" by multi_done().
If the connection is in use then multi_done assigns another easy handle
still using the connection to conn->data, therefore in that case it is
not cleared.
Closes https://github.com/curl/curl/pull/4901
|
|
multi is already assigned to data->multi by curl_multi_add_handle.
Closes https://github.com/curl/curl/pull/4900
|