From schueman@access.digex.net Sun Jun 16 03:34:27 1996
Date: Mon, 3 Jun 1996 02:03:40 -0400
From: Greg Schueman <schueman@access.digex.net>
To: mills@udel.edu
Subject: Win NT BUG, here's the diffs
Cc: schueman@access1.digex.net


There's been a BUG long hidden in the code under NT,
I'm including a fix.  The problem is in the ntp.h
Macros: TIMER_ENQUEUE, TIMER_INSERT, and TIMER_DEQUEUE.

There is a race condition under NT that causes sporatic
failures.  It was necessary to insert a Mutex around
the critical sections to prevent the problem.

The fix is based on diffs provided by jjevnisek@dcosys.qgraph.com
(Jeff Jevnisek).

I modified his fix against 3.5f to not break the Unix code,
as his patch was NT specific.

-Greg Schueman

---------------cut--------------------------------
begin 600 nt-bug-diffs.tar.gz
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
-EZW__P)D!*FW`%```#]2
`
end

