-
Notifications
You must be signed in to change notification settings - Fork 139
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
v5.5 - e2guardian exiting unexpectedly #794
Comments
Apparently it is receiving a SIGABRT:
But not sure why that's not yielding a core dump. |
By default most distributions has core dumping disabled, you have to explicitly enable it - if you have got it enabled then I have no idea - only that from below the tgkill call is to kill a thread (770438) and the affect is to SIGABRT the main process (769313).
I don't recognize this as e2g code, maybe it is from openssl code??
What version of openssl are you use using?
Can you post a copy of your e2guardian.service file?
How is the output below generated?
Regards
Philip
…----- On 2 Feb, 2024, at 21:40, Orion Poplawski ***@***.***> wrote:
Apparently it is receiving a SIGABRT:
770438 stat("/etc/pki/tls/certs/5806f4dd.0", 0x145f2f40f410) = -1 ENOENT (No
such file or directory)
770438 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
770438 rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [HUP USR1 PIPE TERM], 8) = 0
770438 gettid() = 770438
770438 tgkill(769313, 770438, SIGABRT) = 0
770438 rt_sigprocmask(SIG_SETMASK, [HUP USR1 PIPE TERM], NULL, 8) = 0
770438 --- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=769313, si_uid=0}
---
769313 <... rt_sigtimedwait resumed> <unfinished ...>) = ?
771325 +++ killed by SIGABRT +++
But not sure why that's not yielding a core dump.
—
Reply to this email directly, [
#794 (comment) |
view it on GitHub ] , or [
https://github.com/notifications/unsubscribe-auth/ABHZDWIA457RT5ABYUKT5TDYRVMMXAVCNFSM6AAAAABCXJA2AGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRUG4ZTOOBVGY
| unsubscribe ] .
You are receiving this because you are subscribed to this thread. Message ID:
***@***.***>
|
Yeah, I've done everything I can to enable core dumps. But it seems like a core dump isn't even triggered, not that the dump is suppressed. I'm completely baffled by this behavior. openssl-1.1.1k-12.el8_9.x86_64 This is strace output, so I don't know what code it is in.
|
It does seem SSL related though. While it isn't crashing every time, all the exits seem to have a connection to a whatsapp.net address as the last entry in requests.log:
|
I've managed to get a backtrace with gdb:
So perhaps we are not handling corrupt header information safely. |
Maybe your header size check here (https://github.com/e2guardian/e2guardian/blob/v5.5/src/HTTPHeader.cpp#L875) needs to get extended? Or you need intermediate checks in your I'm compiling with |
Hmm, I thought that re-enabling |
@opoplawski - I think I might have a fix in latest v5.5 - can you test? It looks as if whatsapp is faking the first header line but not completing the headers with a blank line. I.e. Using https channel but not running http protocol across it. The effect of this will be that whatapp calls will be dropped. Thanks for all the traces - really helpful! |
So far so good. I don't really have a trigger, but it's been running for a while with no more crashes despite whatsapp still running. |
Just to follow up - haven't seen any more crashes with this in production. |
We are seeing e2guardian exiting unexpectedly a couple times a day on a few of our machines. e.g.:
I don't think the SSL Error message is related - they seem "normal". Nothing else is getting logged. There is no indication of a segfault or similer.
Seeing with 5.5.4, and git 83afd5a
The text was updated successfully, but these errors were encountered: