UDT : _REAL_NOTIFY_SYNC Data : this+0x0, Member, Type: struct _FAST_MUTEX, FastMutex UDT : _FAST_MUTEX
Data : this+0x20, Member, Type: unsigned long, OwningThread Data : this+0x24, Member, Type: unsigned long, OwnerCount
It's just initializing a fast mutex and setting the owner to NULL and count to 0.
On 11-Oct-08, at 7:29 AM, pschweitzer@svn.reactos.org wrote:
VOID NTAPI FsRtlNotifyInitializeSync(IN PNOTIFY_SYNC *NotifySync) {
- KEBUGCHECK(0);
- PINT_NOTIFY_SYNC IntNotifySync;
- *NotifySync = NULL;
- IntNotifySync = FsRtlAllocatePoolWithTag(NonPagedPool,
sizeof(INT_NOTIFY_SYNC), TAG('F', 'S', 'N', 'S'));
- IntNotifySync->Unknown1 = 0;
- IntNotifySync->Unknown2 = 0;
- IntNotifySync->Unknown5 = 0;
- IntNotifySync->Unknown0 = 1;
- IntNotifySync->Unknown3 = 1;
- IntNotifySync->Unknown4 = 4;
- InitializeListHead(&(IntNotifySync->Unknown6));
- IntNotifySync->Unknown8 = 0;
- IntNotifySync->Unknown9 = 0;
- *NotifySync = IntNotifySync;
Best regards, Alex Ionescu
typedef struct _INT_NOTIFY_SYNC // size 0x28 { FAST_MUTEX FastMutex; ULONG_PTR OwningThread; ULONG OwnerCount; } INT_NOTIFY_SYNC, * PINT_NOTIFY_SYNC;
On Sat, Oct 11, 2008 at 1:53 PM, Alex Ionescu ionucu@videotron.ca wrote:
UDT : _REAL_NOTIFY_SYNC Data : this+0x0, Member, Type: struct _FAST_MUTEX, FastMutex UDT : _FAST_MUTEX
Data : this+0x20, Member, Type: unsigned long, OwningThread Data : this+0x24, Member, Type: unsigned long, OwnerCount
It's just initializing a fast mutex and setting the owner to NULL and count to 0.