mirror of
https://github.com/mumble-voip/mumble.git
synced 2026-03-03 00:46:56 -05:00
Mumble fails to start if the OpenSSL build dir exists, but is not accessible #399
Labels
No labels
GlobalShortcuts
Hacktoberfest
accessibility
acl
asio
audio
bonjour
bsd
bug
build
certificate
ci
client
code
documentation
external-bug
feature-request
gRPC
github
good first issue
help wanted
help-needed
ice
installer
linux
macOS
needs-ckeck-with-latest-version
needs-more-input
overlay
positional audio
priority/P0 - Blocker
priority/P1 - Critical
priority/P2 - Important
priority/P3 - Somewhat important
priority/P4 - Low
public-server-registration
qt
recording
release-management
server
stale-no-response
stale-support
support
task
test
theme
translation
triage
ui
windows
wontfix
x64
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/mumble-mumble-voip#399
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @mkrautz on GitHub (Nov 17, 2014).
I was testing various configurations to figure out what was causing a bug I was seeing last week. While I testing, I ran into an odd situation where I couldn't start Mumble.
Basically, I had an alternate user account ("mkrautz2") on the Windows machine I typically build Mumble on.
My c:\MumbleBuild junction is owned by my regular user, "mkrautz". It lives in c:\Users\mkrautz\MumbleBuild and is junctioned to c:\MumbleBuild.
When I copied a static build I had built on the "mkrautz" user, to the desktop of the "mkrautz2" user, and tried to run it as the "mkrautz2" user, I couldn't.
Turns out that if the compiled-in path for the config file does exist, but isn't readable, OpenSSL's own initialization routines will fail. In particular, the problem happens inside OpenSSL_config (which is called by QSsl, QSslCertificate or something -- I don't have the traces right here at the moment). It tries to read a config file (if one is available), and it even passes a flag to the config reader function to allow it to ignore failures if the file doesn't exist. Well, turns out that it DOES exist, but isn't readable. This is treated as a fatal error, and the program shuts down.
This is very much a corner case. But I ran into it, and I'll leave this here in case other people see the same thing.
Possible fixes (if it is something we want to fix):
(I can update with more details later if necessary, such as stack traces and correct function names)