Closed andreasschulze closed 6 years ago
no matter wether any authentication header are present or not ...
Can't repoduce it, works here.
Try to run it in foreground and start it with gdb. After it fails, do a 'bt full'.
I'm seeing it fail (crashes on every incoming message) on EL6, with git HEAD:
commit 4dfdb5b9944a3da6b2c4ad7125496844942b7520 Author: Murray S. Kucherawy msk@trusteddomain.org Date: Wed Jul 19 02:15:31 2017 -0700
Use the hash algorithm specified in the header, not the configured one,
when verifying.
On Wed, Jul 19, 2017 at 8:04 AM, Juri Haberland notifications@github.com wrote:
Can't repoduce it, works here.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/mskucherawy/OpenARC/issues/46#issuecomment-316379205, or mute the thread https://github.com/notifications/unsubscribe-auth/AAqDquqbUQw1X9uDhc7WcW46bO9agWvXks5sPf6pgaJpZM4Ocqu4 .
(gdb) run Starting program: /usr/sbin/openarc -c /etc/openarc.conf -f [Thread debugging using libthread_db enabled] [New Thread 0xb7ff1b70 (LWP 4369)] [New Thread 0xb75f0b70 (LWP 4370)] [New Thread 0xb6befb70 (LWP 4505)] [-1228997776] got cmd 'O' len 12 [-1228997776] cur 0 new 1 nextmask 2 [-1228997776] milter_negotiate: mta_actions=0x1ff, mta_flags=0x1fffff actions=0x1, flags=0x10070a [-1228997776] got cmd 'D' len 153 [-1228997776] cur 1 new ffffffff nextmask 2004 [-1228997776] got cmd 'C' len 57 [-1228997776] cur 1 new 2 nextmask 2004 [-1228997776] got cmd 'D' len 1 [-1228997776] cur 2 new ffffffff nextmask 2018 [-1228997776] got cmd 'D' len 329 [-1228997776] cur 2 new ffffffff nextmask 2018 [-1228997776] got cmd 'D' len 93 [-1228997776] cur 2 new ffffffff nextmask 2018 [-1228997776] got cmd 'M' len 31 [-1228997776] cur 2 new 4 nextmask 2018 [-1228997776] got cmd 'D' len 109 [-1228997776] cur 4 new ffffffff nextmask 3020 [-1228997776] got cmd 'L' len 68 [-1228997776] cur 4 new 7 nextmask 3020 [-1228997776] got cmd 'L' len 92 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 82 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 127 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 136 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 604 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 633 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 115 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 112 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 18 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 76 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 39 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 38 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 81 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 19 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 34 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'L' len 77 [-1228997776] cur 7 new 7 nextmask 1180 [-1228997776] got cmd 'N' len 0 [-1228997776] cur 7 new 8 nextmask 1180
Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb6befb70 (LWP 4505)] 0x0013568d in arc_eoh (msg=0xb6001ab0) at arc.c:2415 2415 if (strcmp(arc_param_get(h->hdr_data, "a"), "rsa-sha1") == 0) Missing separate debuginfos, use: debuginfo-install krb5-libs-1.10.3-65.el6.i686 libcom_err-1.41.12-23.el6.i686 openssl-1.0.1e-57.el6.i686 (gdb) bt
(gdb) bt full
__s2_len = 8
keep = <value optimized out>
c = <value optimized out>
n = <value optimized out>
nsets = <value optimized out>
hashtype = <value optimized out>
type = <value optimized out>
status = <value optimized out>
h = 0x0
set = 0x0
inst = <value optimized out>
htag = 0x0
last = <value optimized out>
status = <value optimized out>
cc = <value optimized out>
afc = 0xb6000928
p = <value optimized out>
err = 0x0
conf = 0x8068018
hdr = <value optimized out>
__PRETTY_FUNCTION__ = "mlfi_eoh"
fi_eoh = <value optimized out>
len = 0
i = <value optimized out>
sd = 9
ret = 0
curstate = 8
newstate = 8
call_abort = 1
r = -2
cmd = 78 'N'
buf = 0x0
arg = {a_len = 0, a_buf = 0x0, a_idx = 6, a_ctx = 0x8079f18}
timeout = {tv_sec = 7209, tv_usec = 999988}
f = 0x143b40 <st_eoh>
fi_abort = 0x804cf50 <mlfi_abort>
fi_close = <value optimized out>
ret = <value optimized out>
No locals.
__res = <value optimized out>
__ignore1 = 0
__ignore2 = 0
pd = 0xb6befb70
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {3944436, 0, 4001536,
-1228999640, 2008660015, 2087250754}, mask_was_saved = 0}}, priv = {pad =
{0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call =
No locals.
On Wed, Jul 19, 2017 at 8:09 AM, Juri Haberland notifications@github.com wrote:
Try to run it in foreground and start it with gdb. After it fails, do a 'bt full'.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/mskucherawy/OpenARC/issues/46#issuecomment-316380741, or mute the thread https://github.com/notifications/unsubscribe-auth/AAqDqkA0LLcQgep4yApMC0GeSiXidBXNks5sPf_7gaJpZM4Ocqu4 .
Ah, tested the wrong commit - I can reproduce it now. Will look into this issue tonight (CET time). Just backout the last commit for now.
On 07/19/2017 03:18 PM, Matt Domsch wrote:
I'm seeing it fail (crashes on every incoming message) on EL6, with git HEAD:
commit 4dfdb5b9944a3da6b2c4ad7125496844942b7520 Author: Murray S. Kucherawy msk@trusteddomain.org Date: Wed Jul 19 02:15:31 2017 -0700
Seeing the same on FreeBSD 10.3, FWIW.
Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 802007c00 (LWP 101084/openarc)] arc_eoh (msg=0x80205a600) at arc.c:2415 2415 if (strcmp(arc_param_get(h->hdr_data, "a"), "rsa-sha1") == 0)
--S.
I suppose the latest commit is wrong. the code call arc_param_get which may return NULL and thus call strcmp(NULL, something)
See pull request #48
on openarc.org the MX is configured to use only one milter: openarc. After update to today's version, the process die on any incoming message.
how to reproduce? send to echo@openarc.org. the answer don't show ARC related header at all I configured the milter "openarc_milter = { inet:[::1]:30068, default_action=accept }" so messages will not be deferred at all.
Unfortunately I can't get the process to write a core file. I set "ulimit -c unlimited" upon milter startup, configuration say "EnableCoredumps yes", "/proc/sys/kernel/core_pattern" contain "core", the process' working directory /is/ writeable.
But I get no core file :-/