Re: [SOGo] Samba crashing
Sorry, should have included that information. Pulled from git on the 16th with "git clone https://github.com/openchange/openchange.git"; root@sogo:/usr/src/openchange_git/openchange# fgrep RELEASE VERSION # e.g. OPENCHANGE_VERSION_RELEASE_NICKNAME=Nicky Nickname # OPENCHANGE_VERSION_RELEASE_NICKNAME=Nanoprobe # e.g. OPENCHANGE_VERSION_RELEASE_VERSION=0.8.2 # OPENCHANGE_VERSION_RELEASE_NUMBER=2.2 Cheers, Rex Julien Kerihuel wrote: > Hi Rex, > > What is the version of openchange you are experiencing this crash with? > (git master, 3rd party repo?) > > Cheers, > Julien. > > On 18/06/14 16:53, Rex Johnston wrote: >> 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=, 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=, >> r=0x0) at ndr_mapi.c:561 >> #1 0x7fffd8ac14f8 in dcesrv_EcDoRpcExt2 (r=0x13da110, >> mem_ctx=0x307a9c0, dce_call=) at >> mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1792 >> #2 dcesrv_exchange_emsmdb_dispatch (dce_call=, >> mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=) at >> mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1943 >> #3 0x7fffd9c198fc in mapiproxy_server_dispatch (dce_call=0x307a9c0, >> mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=0x7fffdf10) at >> mapiproxy/libmapiproxy/dcesrv_mapiproxy_server.c:57 >> #4 0x7fffd9e57b40 in mapiproxy_op_dispatch (dce_call=0x307a9c0, >> mem_ctx=0x307a9c0, r=0x13da110) at mapiproxy/dcesrv_mapiproxy.c:504 >> #5 0x7fffe5cb9fd2 in dcesrv_request (call=0x307a9c0) at >> ../source4/rpc_server/dcerpc_server.c:965 >> #6 dcesrv_process_ncacn_packet (dce_conn=, >> pkt=, blob=...) at ../source4/rpc_server/dcerpc_server.c:1110 >> #7 0x7fffe5cbab59 in dcesrv_read_fragment_done (subreq=0x0) at >> ../source4/rpc_server/dcerpc_server.c:1488 >> #8 0x74987698 in dcerpc_read_ncacn_packet_done (subreq=0x0) at >> ../librpc/rpc/dcerpc_util.c:295 >> #9 0x7151ac64 in tstream_readv_pdu_readv_done >> (subreq=0x2bc4e40) at ../lib/tsocket/tsocket_helpers.c:319 >> #10 0x71519b64 in tstream_readv_done (subreq=0x0) at >> ../lib/tsocket/tsocket.c:604 >> #11 0x73f170e2 in tevent_common_loop_immediate () from >> /usr/lib/x86_64-linux-gnu/libtevent.so.0 >> #12 0x73f19b26 in ?? () from >> /usr/lib/x86_64-linux-gnu/libtevent.so.0 >> #13 0x73f16860 in _tevent_loop_once () from >> /usr/lib/x86_64-linux-gnu/libtevent.so.0 >> #14 0x73f169eb in tevent_common_loop_wait () from >> /usr/lib/x86_64-linux-gnu/libtevent.so.0 >> #15 0x00409459 in binary_smbd_main (argc=, >> argv=, binary_name=0x40bf95 "samba") at >> ../source4/smbd/server.c:486 >> #16 0x73b7476d in __libc_start_main () from >> /lib/x86_64-linux-gnu/libc.so.6 >> #17 0x00405631 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 >> > -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Samba crashing
Hi Rex, What is the version of openchange you are experiencing this crash with? (git master, 3rd party repo?) Cheers, Julien. On 18/06/14 16:53, Rex Johnston wrote: > 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=, 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=, > r=0x0) at ndr_mapi.c:561 > #1 0x7fffd8ac14f8 in dcesrv_EcDoRpcExt2 (r=0x13da110, > mem_ctx=0x307a9c0, dce_call=) at > mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1792 > #2 dcesrv_exchange_emsmdb_dispatch (dce_call=, > mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=) at > mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1943 > #3 0x7fffd9c198fc in mapiproxy_server_dispatch (dce_call=0x307a9c0, > mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=0x7fffdf10) at > mapiproxy/libmapiproxy/dcesrv_mapiproxy_server.c:57 > #4 0x7fffd9e57b40 in mapiproxy_op_dispatch (dce_call=0x307a9c0, > mem_ctx=0x307a9c0, r=0x13da110) at mapiproxy/dcesrv_mapiproxy.c:504 > #5 0x7fffe5cb9fd2 in dcesrv_request (call=0x307a9c0) at > ../source4/rpc_server/dcerpc_server.c:965 > #6 dcesrv_process_ncacn_packet (dce_conn=, > pkt=, blob=...) at ../source4/rpc_server/dcerpc_server.c:1110 > #7 0x7fffe5cbab59 in dcesrv_read_fragment_done (subreq=0x0) at > ../source4/rpc_server/dcerpc_server.c:1488 > #8 0x74987698 in dcerpc_read_ncacn_packet_done (subreq=0x0) at > ../librpc/rpc/dcerpc_util.c:295 > #9 0x7151ac64 in tstream_readv_pdu_readv_done > (subreq=0x2bc4e40) at ../lib/tsocket/tsocket_helpers.c:319 > #10 0x71519b64 in tstream_readv_done (subreq=0x0) at > ../lib/tsocket/tsocket.c:604 > #11 0x73f170e2 in tevent_common_loop_immediate () from > /usr/lib/x86_64-linux-gnu/libtevent.so.0 > #12 0x73f19b26 in ?? () from > /usr/lib/x86_64-linux-gnu/libtevent.so.0 > #13 0x73f16860 in _tevent_loop_once () from > /usr/lib/x86_64-linux-gnu/libtevent.so.0 > #14 0x73f169eb in tevent_common_loop_wait () from > /usr/lib/x86_64-linux-gnu/libtevent.so.0 > #15 0x00409459 in binary_smbd_main (argc=, > argv=, binary_name=0x40bf95 "samba") at > ../source4/smbd/server.c:486 > #16 0x73b7476d in __libc_start_main () from > /lib/x86_64-linux-gnu/libc.so.6 > #17 0x00405631 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 > -- Julien Kerihuel j.kerih...@openchange.org OpenChange Project Founder Twitter: http://twitter.com/jkerihuel GPG Fingerprint: 0B55 783D A781 6329 108A B609 7EF6 FE11 A35F 1F79 signature.asc Description: OpenPGP digital signature
[SOGo] Samba crashing
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=, 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=, r=0x0) at ndr_mapi.c:561 #1 0x7fffd8ac14f8 in dcesrv_EcDoRpcExt2 (r=0x13da110, mem_ctx=0x307a9c0, dce_call=) at mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1792 #2 dcesrv_exchange_emsmdb_dispatch (dce_call=, mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=) at mapiproxy/servers/default/emsmdb/dcesrv_exchange_emsmdb.c:1943 #3 0x7fffd9c198fc in mapiproxy_server_dispatch (dce_call=0x307a9c0, mem_ctx=0x307a9c0, r=0x13da110, mapiproxy=0x7fffdf10) at mapiproxy/libmapiproxy/dcesrv_mapiproxy_server.c:57 #4 0x7fffd9e57b40 in mapiproxy_op_dispatch (dce_call=0x307a9c0, mem_ctx=0x307a9c0, r=0x13da110) at mapiproxy/dcesrv_mapiproxy.c:504 #5 0x7fffe5cb9fd2 in dcesrv_request (call=0x307a9c0) at ../source4/rpc_server/dcerpc_server.c:965 #6 dcesrv_process_ncacn_packet (dce_conn=, pkt=, blob=...) at ../source4/rpc_server/dcerpc_server.c:1110 #7 0x7fffe5cbab59 in dcesrv_read_fragment_done (subreq=0x0) at ../source4/rpc_server/dcerpc_server.c:1488 #8 0x74987698 in dcerpc_read_ncacn_packet_done (subreq=0x0) at ../librpc/rpc/dcerpc_util.c:295 #9 0x7151ac64 in tstream_readv_pdu_readv_done (subreq=0x2bc4e40) at ../lib/tsocket/tsocket_helpers.c:319 #10 0x71519b64 in tstream_readv_done (subreq=0x0) at ../lib/tsocket/tsocket.c:604 #11 0x73f170e2 in tevent_common_loop_immediate () from /usr/lib/x86_64-linux-gnu/libtevent.so.0 #12 0x73f19b26 in ?? () from /usr/lib/x86_64-linux-gnu/libtevent.so.0 #13 0x73f16860 in _tevent_loop_once () from /usr/lib/x86_64-linux-gnu/libtevent.so.0 #14 0x73f169eb in tevent_common_loop_wait () from /usr/lib/x86_64-linux-gnu/libtevent.so.0 #15 0x00409459 in binary_smbd_main (argc=, argv=, binary_name=0x40bf95 "samba") at ../source4/smbd/server.c:486 #16 0x73b7476d in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6 #17 0x00405631 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 -- users@sogo.nu https://inverse.ca/sogo/lists