This fixes the build on our OS X Universal builder.
Our legacy OS X Universal builder's gcc 4.2 seems to
misparse this.
The only place the default argument is used is in test
code, which is easily changable. Also, this is internal
API, so we can change it as we wish.
Fixesmumble-voip/mumble#3336
0b5579c755 erroneously replaced the
variable (letter) l with the integer 1.
Revert this change and use a more descriptive variable name `len`.
Fixes#3325
Previously, the generator was choosing the certificate type (server or client) basing on the presence of the name and email, which broke it.
This PR also includes various other small fixes.
Fixesmumble-voip/mumble#3284.
This commit adds tests to ensure that it's now possible to create a
client certificate without an email, and that creating a client certificate
with an email still works.
This is added because SelfSignedCertificate now conditionally adds an email
subject alt name (SAN) to the generated certificate. If the passed-in email
is empty, SelfSignedCertificat will not include the SAN.
This commit ensures that we only add the email subject alt name (SAN) if the passed-in
email is non-empty.
It turns out that the call to X509V3_EXT_conf_nid() in add_ext() will fail
if the SAN value is formatted incorrectly. In our case, we passed "email:"
as the value, and X509V3_EXT_conf_nid() would return NULL.
To fix this, we now check whether the email we've been given is empty or not.
If it's empty, we don't add the SAN. If it's there, we do.
Previously, the generator was choosing the certificate type (server or client) basing on the presence of the name and email, which is not ideal.
Fixes#3284.
This commit fixes various problems discovered by building on Debian buster
which uses GCC 7. Building on buster gave various -Wimplicit-fallthrough warnings.
In Group.cpp and Server.cpp, we now use if statements instead of a switch with fallthrough.
This improves readability of the code, and fixes the implicit fallthroughs.
In PulseAudio.cpp, we had unintended fallthroughs in a switch statement, which have been
fixed.
In Cert.cpp, we had a potential fallthrough which was impossible to trigger at runtime,
fixed by adding an error return, like the surrounding code.
Fixes#3306.
This commit adds a signal to ServerResolver and a slot to MainWindow to handle ServerHandler errors, in order to start the reconnection timer after the first connection attempt.
Fixes#3220.