General discussion on installation and configuration of SOGo

Text archives Help


[SOGo] Samba crashing


Chronological Thread 
  • From: Rex Johnston < >
  • To:
  • Subject: [SOGo] Samba crashing
  • Date: Thu, 19 Jun 2014 11:53:18 +1200

I'll just cut straight to the end here.

Running samba in the debugger...

Program received signal SIGSEGV, Segmentation fault.
ndr_push_mapi_response (ndr=0xd285b0, ndr_flags=<optimized out>, r=0x0)
at ndr_mapi.c:561
561 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->length));
(gdb) bt
#0 ndr_push_mapi_response (ndr=0xd285b0, ndr_flags=<optimized out>,
r=0x0) at ndr_mapi.c:561
#1 0x00007fffd8ac14f8 in dcesrv_EcDoRpcExt2 (r=0x13da110,
mem_ctx=0x307a9c0, dce_call=<optimized out>) at
mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1792
#2 dcesrv_exchange_emsmdb_dispatch (dce_call=<optimized out>,
mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=<optimized out>) at
mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1943
#3 0x00007fffd9c198fc in mapiproxy_server_dispatch (dce_call=0x307a9c0,
mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=0x7fffffffdf10) at
mapiproxy/libmapiproxy/dcesrv_mapiproxy_server.c:57
#4 0x00007fffd9e57b40 in mapiproxy_op_dispatch (dce_call=0x307a9c0,
mem_ctx=0x307a9c0, r=0x13da110) at mapiproxy/dcesrv_mapiproxy.c:504
#5 0x00007fffe5cb9fd2 in dcesrv_request (call=0x307a9c0) at
../source4/rpc_server/dcerpc_server.c:965
#6 dcesrv_process_ncacn_packet (dce_conn=<optimized out>,
pkt=<optimized out>, blob=...) at ../source4/rpc_server/dcerpc_server.c:1110
#7 0x00007fffe5cbab59 in dcesrv_read_fragment_done (subreq=0x0) at
../source4/rpc_server/dcerpc_server.c:1488
#8 0x00007ffff4987698 in dcerpc_read_ncacn_packet_done (subreq=0x0) at
../librpc/rpc/dcerpc_util.c:295
#9 0x00007ffff151ac64 in tstream_readv_pdu_readv_done
(subreq=0x2bc4e40) at ../lib/tsocket/tsocket_helpers.c:319
#10 0x00007ffff1519b64 in tstream_readv_done (subreq=0x0) at
../lib/tsocket/tsocket.c:604
#11 0x00007ffff3f170e2 in tevent_common_loop_immediate () from
/usr/lib/x86_64-linux-gnu/libtevent.so.0
#12 0x00007ffff3f19b26 in ?? () from
/usr/lib/x86_64-linux-gnu/libtevent.so.0
#13 0x00007ffff3f16860 in _tevent_loop_once () from
/usr/lib/x86_64-linux-gnu/libtevent.so.0
#14 0x00007ffff3f169eb in tevent_common_loop_wait () from
/usr/lib/x86_64-linux-gnu/libtevent.so.0
#15 0x0000000000409459 in binary_smbd_main (argc=<optimized out>,
argv=<optimized out>, binary_name=0x40bf95 "samba") at
../source4/smbd/server.c:486
#16 0x00007ffff3b7476d in __libc_start_main () from
/lib/x86_64-linux-gnu/libc.so.6
#17 0x0000000000405631 in _start ()
(gdb) print r
$1 = (const struct mapi_response *) 0x0


I've altered mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1782

if( !( mapi_response = EcDoRpc_process_transaction(mem_ctx,
emsmdbp_ctx, mapi2k7_request.mapi_request) ) ) // hmmm, Rex
return MAPI_E_INVALID_OBJECT;

It seems to have stopped the null pointer problem, but i have absolutely
no idea what it should do when EcDoRpc_process_transaction() returns NULL,
or even what MAPI_E_INVALID_OBJECT means.

Cheers, Rex




Archive powered by MHonArc 2.6.18.

Top of page