PRB: RPC Name Space Functions Are Not Thread Safe (169439)



The information in this article applies to:

  • Microsoft Platform Software Development Kit (SDK) 1.0

This article was previously published under Q169439

SYMPTOMS

The RPC Name Service functions are not thread safe. If an application uses these functions in a multithreaded environment, you may see indeterminate results.

RESOLUTION

To avoid this problem, simply synchronize calls to the Rpc Name Service functions by either using a Critical Section or a Mutex.

STATUS

Microsoft is researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

This problem applies to the following Rpc functions:

RpcIfIdVectorFree
RpcNsBindingExport
RpcNsBindingImportBegin
RpcNsBindingImportDone
RpcNsBindingImportNext
RpcNsBindingLookupBegin
RpcNsBindingLookupDone
RpcNsBindingLookupNext
RpcNsBindingSelect
RpcNsBindingUnexport
RpcNsEntryExpandName
RpcNsEntryObjectInqBegin
RpcNsEntryObjectInqDone
RpcNsEntryObjectInqNext
RpcNsGroupDelete
RpcNsGroupMbrAdd
RpcNsGroupMbrInqBegin
RpcNsGroupMbrInqDone
RpcNsGroupMbrInqNext
RpcNsGroupMbrRemove
RpcNsMgmtBindingUnexport
RpcNsMgmtEntryCreate
RpcNsMgmtEntryDelete
RpcNsMgmtEntryInqIfIds
RpcNsMgmtHandleSetExpAge
RpcNsMgmtInqExpAge
RpcNsMgmtSetExpAge
RpcNsProfileDelete
RpcNsProfileEltAdd
RpcNsProfileEltInqBegin
RpcNsProfileEltInqDone
RpcNsProfileEltInqNext
RpcNsProfileEltRemove

Note that there is no problem with executing these functions simultaneously from separate processes.

Modification Type:MinorLast Reviewed:7/11/2005
Keywords:kbAPI kbnetwork kbprb kbRPC KB169439