++
+ * [Bug 873] Windows serial refclock proper TTY line discipline emulation
+
+* [Bug 1014] Enable building with VC9 (in Visual Studio 2008, Visual C++ 2008, or SDK)
+* [Bug 1117] Deferred interface binding under Windows works only correctly
+ if FORCE_DNSRETRY is defined
+* [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU
+* DPRINTF macro made safer, always evaluates to a statement and will not
+ misassociate an else which follows the macro.
+
---
(4.2.4p6) 2009/01/08 Released by Harlan Stenn <stenn@ntp.org>
#define recv_buf buff_space.rbuf
#define trans_buf buff_space.tbuf
++
+ #if !defined( _W64 )
+ /*
+ * if ULONG_PTR needs to be defined then the build environment
+ * is pure 32 bit Windows. Since ULONG_PTR and DWORD have
+ * the same size in 32 bit Windows we can safely define
+ * a replacement.
+ */
+ typedef DWORD ULONG_PTR;
+ #endif
+
+/* in nt_clockstuff.c */
+extern void lock_thread_to_processor(HANDLE);
+
/*
* local function definitions
*/
BOOL bSuccess = FALSE;
int errstatus = 0;
DWORD BytesTransferred = 0;
- DWORD Key = 0;
+ ULONG_PTR Key = 0;
IoCompletionInfo * lpo = NULL;
+ u_long time_next_ifscan_after_error = 0;
+
+ /* UNUSED_ARG(NotUsed); */
+ /*
+ * socket and refclock receive call gettimeofday()
+ * so the I/O thread needs to be on the same
+ * processor as the main and timing threads
+ * to ensure consistent QueryPerformanceCounter()
+ * results.
+ */
+ lock_thread_to_processor(GetCurrentThread());
+
/* Set the thread priority high enough so I/O will
* preempt normal recv packet processing, but not
* higher than the timer sync thread.