[PATCH 5/5] rpcrt4: Don't reserve space in the buffer for reference pointers embedded in complex types.
Rob Shearman
robertshearman at gmail.com
Thu Jul 3 17:28:02 CDT 2008
Ref pointers don't need a pointer ID and reserving space would render
the code incompatible with other clients. Note that the pointer
marshalling/unmarshalling functions didn't actually read/write pointer
IDs to/from the reserved space in the buffer.
---
dlls/rpcrt4/ndr_marshall.c | 53 ++++++++++++++++++++-----------------------
1 files changed, 25 insertions(+), 28 deletions(-)
Fixes this Valgrind warning for real now:
Syscall param write(buf) points to uninitialised byte(s)
at (within /lib/ld-2.7.so)
by WriteFile (file.c:559)
by rpcrt4_conn_np_write (rpc_transport.c:404)
by rpcrt4_conn_write (rpc_binding.h:168)
by RPCRT4_SendWithAuth (rpc_message.c:533)
by RPCRT4_Send (rpc_message.c:675)
by I_RpcSend (rpc_message.c:1225)
by I_RpcSendReceive (rpc_message.c:1328)
by NdrSendReceive (ndr_clientserver.c:213)
by ept_insert (epm_c.c:108)
by RpcEpRegisterA (rpc_epmap.c:238)
by test_endpoint_mapper (rpc.c:699)
by func_rpc (rpc.c:736)
by run_test (test.h:449)
by main (test.h:498)
Address 0x7f013c50 is 48 bytes inside a block of size 320 alloc'd
at notify_alloc (heap.c:191)
by RtlAllocateHeap (heap.c:1231)
by RPCRT4_SendWithAuth (rpc_message.c:492)
by RPCRT4_Send (rpc_message.c:675)
by I_RpcSend (rpc_message.c:1225)
by I_RpcSendReceive (rpc_message.c:1328)
by NdrSendReceive (ndr_clientserver.c:213)
by ept_insert (epm_c.c:108)
by RpcEpRegisterA (rpc_epmap.c:238)
by test_endpoint_mapper (rpc.c:699)
by func_rpc (rpc.c:736)
by run_test (test.h:449)
by main (test.h:498)
Uninitialised value was created by a client request
at mark_block_uninitialized (heap.c:164)
by RtlAllocateHeap (heap.c:1239)
by I_RpcAllocate (rpcrt4_main.c:694)
by I_RpcGetBuffer (rpc_message.c:1070)
by NdrGetBuffer (ndr_clientserver.c:171)
by ept_insert (epm_c.c:86)
by RpcEpRegisterA (rpc_epmap.c:238)
by test_endpoint_mapper (rpc.c:699)
by func_rpc (rpc.c:736)
by run_test (test.h:449)
by main (test.h:498)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fdd802a10b3dbd8974b7fa70f580d43f3dc7538a.diff
Type: text/x-patch
Size: 5675 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20080703/ab91c7e1/attachment-0001.bin
More information about the wine-patches
mailing list