Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FIX/FEAT(client): Improvements for using --multiple #4949

Merged

Conversation

Krzmbrzl
Copy link
Member

See the individual commits for a detailed description of what has been changed.

Checks

"--config" is parsed before the main argument parsing loop. Then these
arguments are captured a second time in the else clause and shoved
into the "url" variable.

Having a valid url (the path to a config is a valid file URL) causes the
app to post an OpenURLEvent. This is pretty harmless, it just causes the
settings to load again. But the bigger problem is that
Global::get().mw->on_qaServerConnect_triggered(true) is not called. So,
even if you have autoconnect enabled, launching mumble with "--multiple
--config PATH" won't actually autoconnect.

This commit fixes this by skipping over the "--config" arguments in the
main parsing loop.
@Krzmbrzl Krzmbrzl added client backport-needed bug A bug (error) in the software labels Apr 26, 2021
@Krzmbrzl Krzmbrzl force-pushed the feat-improve-multi-instance-usage branch from de6f98e to d657d16 Compare April 26, 2021 19:20
src/mumble/main.cpp Outdated Show resolved Hide resolved
At startup, the settings for a Mumble instance are loaded (either
using the default location or the "--config" file that was supplied).
Then Mumble checks to see if a valid certificate was loaded. If it
wasn't, it looks for a certificate in a hardcoded path
(QStandardPaths::DocumentsLocation). If there is a certificate there,
it uses it. If not, it creates a new cert and saves it to that
hardcoded path.

This all means that when you run a second instance for the first time,
there will be no certificate in the supplied "--config", so it will use
the certificate in the hardcoded path, which is almost certainly the
certificate that the other mumble instance is using. Connecting to a
server with this certificate will authenticate you as the user who has
that certificate registered. This is probably not what you want.

This commit fixes this issue by adding a CLI option that allows the user
to specify the default certificate directory.
@Krzmbrzl Krzmbrzl force-pushed the feat-improve-multi-instance-usage branch from d657d16 to 590bb2a Compare April 27, 2021 16:05
@Krzmbrzl Krzmbrzl merged commit 91f7646 into mumble-voip:master Apr 28, 2021
11 checks passed
@Krzmbrzl Krzmbrzl deleted the feat-improve-multi-instance-usage branch April 28, 2021 15:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A bug (error) in the software client
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants