If I queue the message with "-oMa 25.25.25.25 -odq", the queue runner crashes as follows which seems to be the "normal" and "correct" way to crash, as would real messages coming from the Internet.
#0 0x00007f56f3ac1af9 in gnutls_x509_trust_list_deinit (list=0x55876d7fe0b0, all=1) at ../../../lib/x509/verify-high.c:213
i = <optimized out>
j = 0
#1 0x00007f56f3a300cb in gnutls_certificate_free_credentials (sc=0x55876d7ff2b0) at ../../lib/cert-cred.c:403
No locals.
#2 0x000055876bf9c1c7 in tls_close (ct_ctx=0x55876d5701a0, do_shutdown=do_shutdown@entry=2) at ./b-exim4-daemon-custom/build-Linux-x86_64/tls-gnu.c:3777
state = 0x55876d5701a0
tlsp = 0x55876c02e3e0 <tls_out> __FUNCTION__ = "tls_close"
#3 0x000055876bfc9c79 in smtp_deliver (addrlist=addrlist@entry=0x55876d55f988, host=host@entry=0x55876dac5838, host_af=host_af@entry=2, defport=<optimized out>, interface=<optimized out>, tblock=tblock@entry=0x55876d56f4f8, message_defer=<optimized out>, suppress_tls=<optimized out>) at ./b-exim4-daemon-custom/build-Linux-x86_64/transports/smtp.c:4850
n = <optimized out>
ob = <optimized out>
yield = <optimized out>
save_errno = 1812207714
rc = <optimized out>
message = 0x0 new_message_id = "\360+sJ\376\177\000\000\000\000\000\000\000\000\000\000@"
sx = 0x55876da3a130 __FUNCTION__ = "smtp_deliver" pass_message = 0
dane_held = <optimized out>
tcw_done = 1
tcw = 0 SEND_MESSAGE = <optimized out>
The ARC crash happens because I omit -oMa 25.25.25.25 and the message is thus locally submitted. Per the configuration, DKIM signing occurs (which is not what would normally happen). The message injected (locally or with -oMa) does not have any Authentication-Results header.
2022-05-12 16:49:21 1npC09-0007sc-1D <= ***@***.com U=root P=local S=4573 id=***
2022-05-12 16:49:46 1npC09-0007sc-1D ARC: no Authentication-Results header for signing
2022-05-12 16:49:46 1npC09-0007sc-1D H=mail.gedalya.net [******]: SMTP error from remote mail server after pipelined end of data: 451 Temporary local problem - please try later
2022-05-12 16:49:46 1npC09-0007sc-1D H=mx2.gedalya.net [******] Network is unreachable
2022-05-12 16:49:46 1npC09-0007sc-1D SIGSEGV (fault address: (nil))
2022-05-12 16:49:46 1npC09-0007sc-1D SIGSEGV (null pointer indirection)
2022-05-12 16:49:46 1npC09-0007sc-1D SIGSEGV (30343 delivering 1npC09-0007sc-1D to mx2.gedalya.net [****] (<email address hidden>)
2022-05-12 16:49:46 1npC09-0007sc-1D Delivery status for <email address hidden>: got 0 of 7 bytes (pipeheader) from transport process 30343 for transport smtp
2022-05-12 16:49:46 1npC09-0007sc-1D == <email address hidden> R=dnslookup T=remote_smtp defer (-1): smtp transport process returned non-zero status 0x008b: terminated by signal 11
Running exim -q -d :
[attempt first server]
...
ARC: requesting bodyhash
DKIM: new bodyhash sha256/simple/-1
dkim signing direct-mode
...
GnuTLS<3>: ASSERT: ../../../lib/nettle/mpi.c[wrap_nettle_mpi_print]:60
DKIM [***.com] b computed: xx....xx
ARC: sign for ****.com
LOG: MAIN
ARC: no Authentication-Results header for signing
SMTP+> BDAT 5360 LAST
[attempt second server]
ARC: requesting bodyhash
DKIM: new bodyhash sha256/simple/-1
dkim signing direct-mode
...
GnuTLS<3>: ASSERT: ../../../lib/nettle/mpi.c[wrap_nettle_mpi_print]:60
DKIM [swdhost.com] b computed: xx....xx
ARC: sign for ****.com
LOG: MAIN PANIC
SIGSEGV (fault address: (nil))
LOG: MAIN PANIC
SIGSEGV (null pointer indirection)
LOG: MAIN PANIC
SIGSEGV (30594 delivering 1npC09-0007sc-1D to mx2.gedalya.net [*****] (<email address hidden>)
)
reading pipe for subprocess 30594 (not ended yet)
expect 7 bytes (pipeheader) from tpt process 30594
LOG: MAIN PANIC
Delivery status for <email address hidden>: got 0 of 7 bytes (pipeheader) from transport process 30594 for transport smtp
When using -oMa, "ARC: no Authentication-Results header for signing" appears for both attempts in the message log.
Some more details on the ARC issue.
If I queue the message with "-oMa 25.25.25.25 -odq", the queue runner crashes as follows which seems to be the "normal" and "correct" way to crash, as would real messages coming from the Internet.
#0 0x00007f56f3ac1af9 in gnutls_ x509_trust_ list_deinit (list=0x55876d7 fe0b0, all=1) at ../../. ./lib/x509/ verify- high.c: 213 certificate_ free_credential s (sc=0x55876d7ff2b0) at ../../lib/ cert-cred. c:403 0x55876d5701a0, do_shutdown= do_shutdown@ entry=2) at ./b-exim4- daemon- custom/ build-Linux- x86_64/ tls-gnu. c:3777
__FUNCTION_ _ = "tls_close" addrlist@ entry=0x55876d5 5f988, host=host@ entry=0x55876da c5838, host_af= host_af@ entry=2, defport=<optimized out>, interface= <optimized out>, tblock= tblock@ entry=0x55876d5 6f4f8, message_ defer=< optimized out>, suppress_ tls=<optimized out>) at ./b-exim4- daemon- custom/ build-Linux- x86_64/ transports/ smtp.c: 4850
new_message_ id = "\360+sJ\ 376\177\ 000\000\ 000\000\ 000\000\ 000\000\ 000\000@ "
__FUNCTION_ _ = "smtp_deliver"
pass_message = 0
SEND_MESSAGE = <optimized out>
i = <optimized out>
j = 0
#1 0x00007f56f3a300cb in gnutls_
No locals.
#2 0x000055876bf9c1c7 in tls_close (ct_ctx=
state = 0x55876d5701a0
tlsp = 0x55876c02e3e0 <tls_out>
#3 0x000055876bfc9c79 in smtp_deliver (addrlist=
n = <optimized out>
ob = <optimized out>
yield = <optimized out>
save_errno = 1812207714
rc = <optimized out>
message = 0x0
sx = 0x55876da3a130
dane_held = <optimized out>
tcw_done = 1
tcw = 0
The ARC crash happens because I omit -oMa 25.25.25.25 and the message is thus locally submitted. Per the configuration, DKIM signing occurs (which is not what would normally happen). The message injected (locally or with -oMa) does not have any Authentication- Results header.
2022-05-12 16:49:21 1npC09-0007sc-1D <= ***@***.com U=root P=local S=4573 id=*** Results header for signing
2022-05-12 16:49:46 1npC09-0007sc-1D ARC: no Authentication-
2022-05-12 16:49:46 1npC09-0007sc-1D H=mail.gedalya.net [******]: SMTP error from remote mail server after pipelined end of data: 451 Temporary local problem - please try later
2022-05-12 16:49:46 1npC09-0007sc-1D H=mx2.gedalya.net [******] Network is unreachable
2022-05-12 16:49:46 1npC09-0007sc-1D SIGSEGV (fault address: (nil))
2022-05-12 16:49:46 1npC09-0007sc-1D SIGSEGV (null pointer indirection)
2022-05-12 16:49:46 1npC09-0007sc-1D SIGSEGV (30343 delivering 1npC09-0007sc-1D to mx2.gedalya.net [****] (<email address hidden>)
2022-05-12 16:49:46 1npC09-0007sc-1D Delivery status for <email address hidden>: got 0 of 7 bytes (pipeheader) from transport process 30343 for transport smtp
2022-05-12 16:49:46 1npC09-0007sc-1D == <email address hidden> R=dnslookup T=remote_smtp defer (-1): smtp transport process returned non-zero status 0x008b: terminated by signal 11
Running exim -q -d :
[attempt first server] ./lib/nettle/ mpi.c[wrap_ nettle_ mpi_print] :60 Results header for signing
...
ARC: requesting bodyhash
DKIM: new bodyhash sha256/simple/-1
dkim signing direct-mode
...
GnuTLS<3>: ASSERT: ../../.
DKIM [***.com] b computed: xx....xx
ARC: sign for ****.com
LOG: MAIN
ARC: no Authentication-
SMTP+> BDAT 5360 LAST
[attempt second server] ./lib/nettle/ mpi.c[wrap_ nettle_ mpi_print] :60
ARC: requesting bodyhash
DKIM: new bodyhash sha256/simple/-1
dkim signing direct-mode
...
GnuTLS<3>: ASSERT: ../../.
DKIM [swdhost.com] b computed: xx....xx
ARC: sign for ****.com
LOG: MAIN PANIC
SIGSEGV (fault address: (nil))
LOG: MAIN PANIC
SIGSEGV (null pointer indirection)
LOG: MAIN PANIC
SIGSEGV (30594 delivering 1npC09-0007sc-1D to mx2.gedalya.net [*****] (<email address hidden>)
)
reading pipe for subprocess 30594 (not ended yet)
expect 7 bytes (pipeheader) from tpt process 30594
LOG: MAIN PANIC
Delivery status for <email address hidden>: got 0 of 7 bytes (pipeheader) from transport process 30594 for transport smtp
When using -oMa, "ARC: no Authentication- Results header for signing" appears for both attempts in the message log.