[mpm-itk] apache24 crashes with mpm-itk inside FreeBSD Jail 11.2-RELEASE

patpro patpro at patpro.net
Fri Jul 20 12:48:39 UTC 2018


On 2018-07-20 13:10, Steinar H. Gunderson wrote:
> On Fri, Jul 20, 2018 at 01:07:55PM +0200, patpro wrote:
>> Can you provide basic guidance? I've never did anything like that 
>> before. I
>> can do very basic stuff like this:
> 
> So that would be a good start, except seemingly, you're running with 
> stripped
> binaries. You'll need to compile them with debug symbols on and 
> stripping
> turned off. (Ideally also with optimization turned off, but that's 
> secondary
> here.)

Ok, I've found a wait to recompile Apache and MPM-ITK with debug (no 
stripping):

# file /usr/local/libexec/apache24/mod_mpm_itk.so
/usr/local/libexec/apache24/mod_mpm_itk.so: ELF 64-bit LSB shared 
object, x86-64, version 1 (FreeBSD), dynamically linked, with 
debug_info, not stripped

# file /usr/local/sbin/httpd
/usr/local/sbin/httpd: ELF 64-bit LSB executable, x86-64, version 1 
(FreeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, for 
FreeBSD 11.2, FreeBSD-style, with debug_info, not stripped

but the backtrace extracted from a brand-new httpd.core file is exactly 
the same. It took me some research to find out I've to provide gdb with 
the path of httpd binary. Eventually I've extracted this backtrace:

(gdb) bt full
#0  0x0000000804f02645 in ssl23_connect () from /usr/lib/libssl.so.8
No symbol table info available.
#1  0x0000000806af6dec in ldap_start_tls_s () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#2  0x0000000806af5d52 in ldap_int_tls_start () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#3  0x0000000806ad0688 in ldap_int_open_connection () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#4  0x0000000806ae205d in ldap_new_connection () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#5  0x0000000806acff35 in ldap_open_defconn () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#6  0x0000000806ae1673 in ldap_send_initial_request () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#7  0x0000000806ad746a in ldap_sasl_bind () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#8  0x0000000806ad8474 in ldap_simple_bind () from 
/usr/local/lib/libldap-2.4.so.2
No symbol table info available.
#9  0x000000080848bdaa in _nss_ldap_proxy_bind () from 
/usr/local/lib/nss_ldap.so.1
No symbol table info available.
#10 0x0000000808489796 in _nss_ldap_read () from 
/usr/local/lib/nss_ldap.so.1
No symbol table info available.
#11 0x0000000808489eb0 in _nss_ldap_search_s () from 
/usr/local/lib/nss_ldap.so.1
No symbol table info available.
#12 0x000000080848ad2c in _nss_ldap_getbyname () from 
/usr/local/lib/nss_ldap.so.1
No symbol table info available.
#13 0x000000080848c5ed in _nss_ldap_getpwnam_r () from 
/usr/local/lib/nss_ldap.so.1
No symbol table info available.
#14 0x0000000801c4dd4e in __nss_compat_getpwnam_r () from /lib/libc.so.7
No symbol table info available.
#15 0x0000000801d2a0dc in nsdispatch () from /lib/libc.so.7
No symbol table info available.
#16 0x0000000801d12961 in getpwnam () from /lib/libc.so.7
No symbol table info available.
#17 0x000000000044271e in ap_uname2id (name=0x809e2b2e8 "merlier") at 
mpm_common.c:232
	ent = (struct passwd *) 0x809e2b2f8
#18 0x000000080827e39e in assign_user_id (cmd=0x7fffffffea80, 
ptr=0x809e2b2c0, user_name=0x809e2b2e8 "merlier", group_name=0x809e2b2f0 
"www") at mpm_itk.c:516
	dconf = (itk_per_dir_conf *) 0x809e2b2c0
	err = 0x0
#19 0x0000000000471c86 in invoke_cmd (cmd=0x808480610, 
parms=0x7fffffffea80, mconfig=0x809e2b2c0, args=0x8024ca14b "") at 
config.c:938
	override_list_ok = 0
	w = 0x809e2b2e8 "merlier"
	w2 = 0x809e2b2f0 "www"
	w3 = 0x46d883 "H\203}?"
	errmsg = 0x0
#20 0x000000000046e255 in ap_walk_config_sub (current=0x8024ca0f8, 
parms=0x7fffffffea80, section_vector=0x809e2b038) at config.c:1339
	dir_config = (void *) 0x809e2b2c0
	retval = 0x809e2b1b0 ""
	cmd = (const command_rec *) 0x808480610
	ml = (ap_mod_list *) 0x8024a07a8
	dir = 0x8024a4b58 "assignuserid"
#21 0x000000000046e034 in ap_walk_config (current=0x8024ca0f8, 
parms=0x7fffffffea80, section_vector=0x809e2b038) at config.c:1372
	errmsg = 0x809e2b1b0 ""
	oldconfig = (ap_conf_vector_t *) 0x80245c1b0
#22 0x0000000000454fa6 in dirsection (cmd=0x7fffffffea80, 
mconfig=0x80245c9d0, arg=0x8024a4b57 "") at core.c:2387
	errmsg = 0x809e2b030 "builtin"
---Type <return> to continue, or q <return> to quit---
	endp = 0x8024ca0ef ">"
	old_overrides = 150
	old_path = 0x0
	conf = (core_dir_config *) 0x809e2b1b0
	new_dir_conf = (ap_conf_vector_t *) 0x809e2b038
	r = (ap_regex_t *) 0x0
	thiscmd = (const command_rec *) 0x49e6f0
	err = 0x0
#23 0x00000000004719af in invoke_cmd (cmd=0x49e6f0, 
parms=0x7fffffffea80, mconfig=0x80245c9d0, args=0x8024ca0d8 
"/sites/cahiersdemusique>") at config.c:895
	override_list_ok = 0
	w = 0x802453b80 ""
	w2 = 0x7fffffffe970 "?????\177"
	w3 = 0x46d83e "H\211E?H\203}?"
	errmsg = 0x0
#24 0x000000000046e255 in ap_walk_config_sub (current=0x8024ca090, 
parms=0x7fffffffea80, section_vector=0x80245c1b0) at config.c:1339
	dir_config = (void *) 0x80245c9d0
	retval = 0x0
	cmd = (const command_rec *) 0x49e6f0
	ml = (ap_mod_list *) 0x80245cc20
	dir = 0x8024a4b30 "<directory"
#25 0x000000000046e034 in ap_walk_config (current=0x8024ca090, 
parms=0x7fffffffea80, section_vector=0x80245c1b0) at config.c:1372
	errmsg = 0x0
	oldconfig = (ap_conf_vector_t *) 0x0
#26 0x000000000046f94d in ap_process_config_tree (s=0x802452110, 
conftree=0x80246f118, p=0x802429028, ptemp=0x802456028) at config.c:2156
	errmsg = 0x46b635 "\211E?\203}?"
	parms = {info = 0x0, override = 95, override_opts = 239, override_list 
= 0x0, limited = -1, limited_xmethods = 0x0, xlimited = 0x0, config_file 
= 0x0, directive = 0x8024ca0f8,
   pool = 0x802429028, temp_pool = 0x802456028, server = 0x802452110, 
path = 0x809e2b190 "/sites/cahiersdemusique/", cmd = 0x808480610, 
context = 0x809e2b038, err_directive = 0x0}
#27 0x000000000043537b in main (argc=2, argv=0x7fffffffecf0) at 
main.c:780
	c = 68 'D'
	showcompile = 0
	showdirectives = 0
	confname = 0x49b390 "etc/apache24/httpd.conf"
	def_server_root = 0x49b3a8 "/usr/local"
	temp_error_log = 0x0
	error = 0x0
	process = (process_rec *) 0x802427118
	pconf = (apr_pool_t *) 0x802429028
	plog = (apr_pool_t *) 0x802458028
	ptemp = (apr_pool_t *) 0x802456028
	pcommands = (apr_pool_t *) 0x80244e028
	opt = (apr_getopt_t *) 0x80244e118
	rv = 0
	mod = (module **) 0x6b9ea8
	opt_arg = 0x7fffffffef00 "NOHTTPACCEPT"
	signal_server = (apr_OFN_ap_signal_server_t *) 0x482190 
<ap_signal_server>
	rc = 0

thanks
patpro



More information about the mpm-itk mailing list