[RXCE]
authorPierre Schweitzer <pierre@reactos.org>
Sun, 25 Jun 2017 11:55:37 +0000 (11:55 +0000)
committerPierre Schweitzer <pierre@reactos.org>
Sun, 25 Jun 2017 11:55:37 +0000 (11:55 +0000)
commit81eba8d3e7fe4a895571de1d533eec7d540e397e
tree8841439ce970c449477263e157c45663ceba263b
parentdb0b0e9ee31c3c420ed27379a54ba1a425511dac
[RXCE]
- Implemented RxCompleteSrvOpenKeyAssociation(), RxInitiateSrvOpenKeyAssociation(), RxProcessChangeBufferingStateRequests()
- Implemented RxFinalizeFcbTable(), RxFinalizeNetFobx(), RxFinalizeNetRoot(), RxFinalizeSrvCall(), RxFinalizeVNetRoot(), RxFreeObject(), RxpDestroySrvCall(), RxRemovePrefixTableEntry(), RxRemoveVirtualNetRootFromNetRoot(), RxScavengeRelatedFobxs(), RxTearDownBufferingManager(), RxUndoScavengerFinalizationMarking()
- Implemented RxPostToWorkerThread()
- Implemented RxFlushFcbInSystemCache(), RxPurgeFcb(), RxPurgeFcbInSystemCache()
- Stubbed RxOrphanSrvOpens(), RxpDiscardChangeBufferingStateRequests(), RxpDispatchChangeBufferingStateRequests(), RxpProcessChangeBufferingStateRequests()
- Continued implementation of RxDereference() so that it supports more objects than just SRV_CALL
- Reworked RxInsertWorkQueueItem() implementation so that it accepts any work item, and not just dispatch work items
- Finished implementation of RxTableLookupName() so that it properly returns a V_NET_ROOT on NET_ROOT match

Notable effects of this commit are:
- RXCE/RDBSS leak less memory; now objects without references are properly deleted from the system
- This means that stale objects are also deleted; this fixes CORE-13483 were same stale SRV_CALL was used again and again
- Because in prefix table NET_ROOT are correctly handled, it's now possible to mount several path from the same prefix; this fixes CORE-13482

CORE-8204
CORE-11327
CORE-13482
CORE-13483

svn path=/trunk/; revision=75195
reactos/sdk/include/ddk/buffring.h
reactos/sdk/include/ddk/fcb.h
reactos/sdk/include/ddk/fcbtable.h
reactos/sdk/include/ddk/mrxfcb.h
reactos/sdk/include/ddk/prefix.h
reactos/sdk/include/ddk/rxprocs.h
reactos/sdk/include/ddk/rxworkq.h
reactos/sdk/lib/drivers/rxce/rxce.c