| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Clang complained that the lambda was capturing unnecessary variables.
|
|
|
|
|
|
| |
Clang's documentation checker complains since it's not actually
annotated as deprecated. Change comment to just indicate that it
is not a public API function and will be removed in the future.
|
|
|
|
|
|
|
|
| |
If the label param was set to a non-empty string, the decoding would treat
it as part of the label and then end up throwing a decoding error. The key
fix here is adding the clear() call in decode. Private bug report by email.
Add some basic tests for the PEM decoder.
|
| |
|
|
|
|
| |
But allow it to be set via a constructor arg.
|
|
|
|
|
|
| |
It turns out that GCC dropped support for IRIX in 4.8, so likely there
was never even a C++11 compiler that could have been used to compile 2.x
in any case.
|
|
|
| |
Missing parentheses around pragma message caused warnings in Visual Studio.
|
|
|
|
|
|
| |
This breaks how we determine the ISA flags for amalgamation files.
The code for doing that is kind of a hack but I don't want to mess
with it right now, easier to just rename the ISA internally.
|
|
|
|
| |
Simplifies macro generation
|
|
|
|
| |
These conflict with name of temp variables and MSVC gets noisy.
|
|
|
|
|
| |
Clang doesn't like the way SIMD shifts were implemented, I guess
it fails to inline the constant. Make it a template parameter instead.
|
| |
|
| |
|
|
|
|
| |
GH #1303
|
| |
|
| |
|
|\ |
|
| | |
|
| | |
|
| | |
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | | |
MSVC seems to not allow defining aliases inside lambda capture expressions.
Defining the aliases beforehand, outside the lambda fixes the issue.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Adds a small runtime benchmark to prevent performance degradation by
overprovisioning SMT CPUs with too many threads. This is a temporary
workaround until a hardware and OS independent detection of the
physical core count through Botan::CPUID is in place.
|
| | |
| | |
| | |
| | |
| | |
| | | |
- Adds XMSS to the index of supported signature schemes.
- Adds XMSS multithreading support to news.rst
- Updates copyright notices of edited files.
|
| | | |
|
| | | |
|
|\ \ \ |
|
| | | | |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | | |
Issued raised by @securitykernel on Slack, there was no non-hacky
way to decode a list of certificate objects because creating an
uninitialized one wasn't allowed. However after #884 that got much
closer to being viable, this is the last pieces.
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| | |
We have to rely on non-portable OS calls to convert UTC times,
and they are not available on many systems (including Solaris and MinGW).
But instead there is a simple algorithm due to Howard Hinnant that
does the same job. Woo.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Give applications using an external crypto device for signature
generation and/or verification and/or (ec)dh key exchange while
establishing a TLS session hooks to implement the corresponding
functionality.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Don't postpone the verification of a server certificate if certificate
status messages are not expected in client handshake. When using an
external crypto device it may be necessary to verify the certificate
before using the public key for verification of the signature in the
server key exchange message.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Since eventually CAST-256 is going away.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This previously enabled doing something unsafe (misaligned reads),
but it turns out even on hardware that supports this, it is not
safe to do because the compiler may do something unfortunate.
Now memcpy is used, which is safe on any platform.
Should provide a noticable speedup for ARM and PPC64, which previously
used the byte-at-a-time fallback code.
|
|\ \ \ |
|
| |/ / |
|
|/ /
| |
| |
| |
| | |
It's been dropped from GCC, appears OpenACC is the new hotness
for this kind of thing.
|
| |
| |
| |
| | |
This caused a build failure when compiling with amalgamation + minimized.
|
| | |
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This was already caught with the policy check later but it's better
to be explicit. (And in theory an application might implement their
policy version check to be "return true", which would lead to us
actually attempting to negotiate SSLv3).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Due to an oversight in the logic, previously a client attempt to
negotiate SSLv3 would result in the server trying to negotiate
TLS v1.2. Now instead they get a protocol_error alert.
Similarly, detect the the (invalid) case of a major number <= 2,
which does not coorespond to any real TLS version. The server
would again reply as a TLS v1.2 server in that case, and now
just closes the connection with an alert.
|
| | |
| | |
| | |
| | | |
An empty extension is not allowed, but was previously accepted.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In the client key exchange if the message was malformed (eg an
completely empty ECDH share) a Decoding_Error would be thrown,
then caught and a fake pre master secret generated. Move the
parsing of the message out of the try/catch block, so the correct
error is reported.
|
| | |
| | |
| | |
| | |
| | | |
The previous limit of 512 bytes meant that TLS was unable to
negotiate using FFDHE-6144 or FFDHE-8192 groups.
|