[ntp:bk-ntp-stable-send] BitKeeper diffs

Harlan Stenn stenn at whimsy.udel.edu
Mon Mar 30 06:33:16 UTC 2009


#### ChangeSet ####
2009-03-28 02:46:45-05:00, stenn at whimsy.udel.edu 
  build system email address cleanup

==== BitKeeper/triggers/changelog ====
2009-03-28 02:45:21-05:00, stenn at whimsy.udel.edu +1 -1
  trigger email address cleanup

--- 1.3/BitKeeper/triggers/changelog	2005-12-20 22:04:44 -05:00
+++ 1.4/BitKeeper/triggers/changelog	2009-03-28 02:45:21 -05:00
@@ -56,7 +56,7 @@ fi
     echo
     bk changes -v -r+
     ) | sed 's/^/    /'
-) | mail -s "$BK_EVENT in ${H}:${R}" cvs-all at ntp.isc.org
+) | mail -s "$BK_EVENT in ${H}:${R}" cvs-all at ntp.org
 
 echo Leaving 'changelog' trigger
 exit 0

==== BitKeeper/triggers/commitlogs ====
2009-03-28 02:45:22-05:00, stenn at whimsy.udel.edu +1 -1
  trigger email address cleanup

--- 1.5/BitKeeper/triggers/commitlogs	2005-12-20 22:04:45 -05:00
+++ 1.6/BitKeeper/triggers/commitlogs	2009-03-28 02:45:22 -05:00
@@ -77,7 +77,7 @@ fi
         bk changes -v -r$BK_CSETS
         ) | sed 's/^/    /'
     fi
-) | mail -s "$BK_EVENT in ${H}:${R}" commitlogs at ntp.isc.org
+) | mail -s "$BK_EVENT in ${H}:${R}" commitlogs at ntp.org
 
 echo leaving 'commitlogs' trigger
 

==== BitKeeper/triggers/delta-changelog ====
2009-03-28 02:45:22-05:00, stenn at whimsy.udel.edu +2 -2
  trigger email address cleanup

--- 1.7/BitKeeper/triggers/delta-changelog	2005-12-20 22:04:45 -05:00
+++ 1.8/BitKeeper/triggers/delta-changelog	2009-03-28 02:45:22 -05:00
@@ -29,7 +29,7 @@ else
     H=$BK_HOST
     R=$BK_ROOT
 fi
-#mail -s 'BO good stuff' stenn at ntp.isc.org < /dev/null
+#mail -s 'BO good stuff' stenn at ntp.org < /dev/null
 (
     if [ X$BKD_ROOT != X ]
     then
@@ -62,7 +62,7 @@ fi
 
     bk -R prs -hr${LGC}.. -x1st -nd':I:' | bk changes -v -
     ) | tee ChangeLog.new | sed 's/^/    /'
-) | mail -s "$BK_EVENT in ${H}:${R}" commitlogs at ntp.isc.org
+) | mail -s "$BK_EVENT in ${H}:${R}" commitlogs at ntp.org
 #cat ChangeLog >> ChangeLog.new
 #mv ChangeLog.new ChangeLog
 

==== BitKeeper/triggers/notify ====
2009-03-28 02:45:22-05:00, stenn at whimsy.udel.edu +1 -1
  trigger email address cleanup

--- 1.3/BitKeeper/triggers/notify	2005-12-20 22:04:46 -05:00
+++ 1.4/BitKeeper/triggers/notify	2009-03-28 02:45:22 -05:00
@@ -76,7 +76,7 @@ fi
         bk changes -v -r$BK_CSETS
         ) | sed 's/^/    /'
     fi
-) | mail -s "$BK_EVENT in ${H}:${R}" stenn at ntp.isc.org
+) | mail -s "$BK_EVENT in ${H}:${R}" stenn at ntp.org
 
 echo leaving 'notify' trigger
 

==== BitKeeper/triggers/paranoid ====
2009-03-28 02:45:22-05:00, stenn at whimsy.udel.edu +1 -1
  trigger email address cleanup

--- 1.3/BitKeeper/triggers/paranoid	2005-12-20 22:04:46 -05:00
+++ 1.4/BitKeeper/triggers/paranoid	2009-03-28 02:45:22 -05:00
@@ -10,7 +10,7 @@
 # set the BYPASS_PARANOID envariable to 1 before running "bk resolve"
 
 # Edit the next line...
-MAILTO=stenn at ntp.isc.org
+MAILTO=stenn at ntp.org
 
 case "$BYPASS_PARANOID" in
  1) exit 0

==== BitKeeper/triggers/post-incoming.license-warn ====
2009-03-28 02:45:22-05:00, stenn at whimsy.udel.edu +1 -1
  trigger email address cleanup

--- 1.6/BitKeeper/triggers/post-incoming.license-warn	2006-06-18 02:05:11 -04:00
+++ 1.7/BitKeeper/triggers/post-incoming.license-warn	2009-03-28 02:45:22 -05:00
@@ -28,7 +28,7 @@ BitKeeper/etc/config contains license ke
 
 As such, it cannot be used to *supply* ChangeSets to other repositories.
 
-This can be fixed; please contact stenn at ntp.isc.org for more information.
+This can be fixed; please contact stenn at ntp.org for more information.
 EOF
     ;;
  2) echo "BKD_VERSION is <$BKD_VERSION>!"

==== BitKeeper/triggers/pre-resolve.licfix ====
2009-03-28 02:45:22-05:00, stenn at whimsy.udel.edu +1 -1
  trigger email address cleanup

--- 1.3/BitKeeper/triggers/pre-resolve.licfix	2006-07-19 20:59:54 -04:00
+++ 1.4/BitKeeper/triggers/pre-resolve.licfix	2009-03-28 02:45:22 -05:00
@@ -24,7 +24,7 @@ bk changes -r"$key" -d' ' > /dev/null 2>
 	cat <<EOF
 You are trying to pull either from a bad repository or into a bad repository.
 
-Contact Harlan Stenn <stenn at ntp.isc.org> if you need help.
+Contact Harlan Stenn <stenn at ntp.org> if you need help.
 EOF
 	exit 1
 }

==== BitKeeper/triggers/send ====
2009-03-28 02:45:22-05:00, stenn at whimsy.udel.edu +2 -2
  trigger email address cleanup

--- 1.13/BitKeeper/triggers/send	2006-08-10 22:01:26 -04:00
+++ 1.14/BitKeeper/triggers/send	2009-03-28 02:45:22 -05:00
@@ -53,13 +53,13 @@ esac
 case "$my_version" in
  bk-4*)
     bk changes -vv -m - < BitKeeper/etc/${CSETS} \
-	| mail -s "BitKeeper diffs" bk-${REPO}-send at ntp.isc.org
+	| mail -s "BitKeeper diffs" bk-${REPO}-send at ntp.org
     ;;
  *) echo "<$my_version> is not bk-4*!"
     ;;
 esac
 
-# bk send -d -q bk-${REPO}-send at ntp.isc.org
+# bk send -d -q bk-${REPO}-send at ntp.org
 
 echo "Leaving send trigger"
 

==== ChangeLog ====
2009-03-28 02:46:36-05:00, stenn at whimsy.udel.edu +3 -1
  build system email address cleanup

--- 1.57/ChangeLog	2009-03-22 16:09:42 -05:00
+++ 1.58/ChangeLog	2009-03-28 02:46:36 -05:00
@@ -1,6 +1,8 @@
+* build system email address cleanup
 * [Bug 774] parsesolaris.c does not compile under the new Solaris
 * [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 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

#### ChangeSet ####
2009-03-24 15:22:36+00:00, davehart at shiny.ad.hartbrothers.com 
  config.h:
    include winsock.h before ws2tcpip.h to fix VS 2005 build

==== ports/winnt/include/config.h ====
2009-03-24 15:22:23+00:00, davehart at shiny.ad.hartbrothers.com +8 -5
  include winsock.h before ws2tcpip.h to fix VS 2005 build

--- 1.48/ports/winnt/include/config.h	2009-03-17 13:18:01 -05:00
+++ 1.49/ports/winnt/include/config.h	2009-03-24 10:22:23 -05:00
@@ -51,11 +51,12 @@
  * code so we don't have to see the warning messages
  */
 #ifndef _WSPIAPI_H_
-//#define _WSPIAPI_H_ // need these wrappers for ntpd.exe to load on w2k
+/* #define _WSPIAPI_H_ */ /* need these wrappers for ntpd.exe to load on w2k */
 #endif
 
 /* Include Windows headers */
 #include <windows.h>
+#include <winsock.h>
 #include <ws2tcpip.h>
 
 /*
@@ -71,7 +72,7 @@
 #include <wspiapi.h>
 #endif
 
-//#include <runtimelink.h>	/* must come after ws2tcpip.h */
+/* #include <runtimelink.h> */	/* must come after ws2tcpip.h */
 #undef interface
 #include <process.h>
 
@@ -349,9 +350,11 @@ typedef unsigned long uintptr_t;
  * _beginthreadex takes sames args as CreateThread but 
  * initializes per-thread CRT state before invoking the
  * thread function, and calls _endthreadex on its
- * return instead of ExitThread.  _MSC_VER 1200 is VC6,
- * it probably goes back further so the test might
- * need changing if someone builds with ancient MSC.
+ * return instead of ExitThread.  _MSC_VER 1200 and
+ * later (VC6) are known to have _beginthreadex.  If
+ * you introduce support for a new compiler which 
+ * has _beginthreadex in its C runtime, modify the
+ * test below so that the #define lines are inactive.
  */
 #if !defined(_MSC_VER) || (_MSC_VER < 1200)
 #define _beginthreadex CreateThread

#### ChangeSet ####
2009-03-24 15:14:36+00:00, davehart at shiny.ad.hartbrothers.com 
  ntp_iocompletionport.c:
    use one receive per socket to avoid Win2000 afd.sys bugcheck 0x76

==== ports/winnt/ntpd/ntp_iocompletionport.c ====
2009-03-24 15:14:23+00:00, davehart at shiny.ad.hartbrothers.com +10 -1
  use one receive per socket to avoid Win2000 afd.sys bugcheck 0x76

--- 1.26.1.1/ports/winnt/ntpd/ntp_iocompletionport.c	2009-03-19 20:46:13 -05:00
+++ 1.26.1.2/ports/winnt/ntpd/ntp_iocompletionport.c	2009-03-24 10:14:23 -05:00
@@ -645,7 +645,16 @@ io_completion_port_add_socket(SOCKET fd,
 		}
 	}
 
-#define WINDOWS_RECVS_PER_SOCKET 4
+	/*
+	 * Windows 2000 bluescreens with bugcheck 0x76
+	 * PROCESS_HAS_LOCKED_PAGES at ntpd process
+	 * termination when using more than one pending
+	 * receive per socket.  A runtime version test
+	 * would allow using more on newer versions
+	 * of Windows.
+	 */
+
+#define WINDOWS_RECVS_PER_SOCKET 1
 
 	for (n = 0; n < WINDOWS_RECVS_PER_SOCKET; n++) {
 

#### ChangeSet ####
2009-03-22 21:09:43+00:00, davehart at shiny.ad.hartbrothers.com 
  Makefile.am, ChangeLog:
    [Bug 774] parsesolaris.c does not compile under the new Solaris

==== ChangeLog ====
2009-03-22 21:09:42+00:00, davehart at shiny.ad.hartbrothers.com +1 -0
  [Bug 774] parsesolaris.c does not compile under the new Solaris

--- 1.56/ChangeLog	2009-03-19 22:39:16 -05:00
+++ 1.57/ChangeLog	2009-03-22 16:09:42 -05:00
@@ -1,3 +1,4 @@
+* [Bug 774] parsesolaris.c does not compile under the new Solaris
 * [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

==== libparse/Makefile.am ====
2009-03-22 21:09:42+00:00, davehart at shiny.ad.hartbrothers.com +1 -1
  [Bug 774] parsesolaris.c does not compile under the new Solaris

--- 1.8/libparse/Makefile.am	2005-07-21 09:50:56 -04:00
+++ 1.9/libparse/Makefile.am	2009-03-22 16:09:42 -05:00
@@ -165,4 +165,4 @@ parsesolaris.o: sys/systm.h
 
 sys/systm.h:
 	mkdir sys && \
-	sed -e 's/ffs(long)/ffs(int)/' < /usr/include/sys/systm.h > sys/systm.h
+	sed -e '/ffs(.*)/d' < /usr/include/sys/systm.h > sys/systm.h

#### ChangeSet ####
2009-03-20 03:39:26+00:00, hart at pogo.udel.edu 
  ChangeLog:
    bk for windows isn't converting line endings correctly, remove two blank lines visible only on Unix side

==== ChangeLog ====
2009-03-20 03:39:16+00:00, hart at pogo.udel.edu +0 -2
  bk for windows isn't converting line endings correctly, remove two blank lines visible only on Unix side

--- 1.55/ChangeLog	2009-03-19 22:18:34 -05:00
+++ 1.56/ChangeLog	2009-03-19 22:39:16 -05:00
@@ -1,6 +1,4 @@
-
 * [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

#### ChangeSet ####
2009-03-20 03:10:22+00:00, davehart at shiny.ad.hartbrothers.com 
  ChangeLog:
    remove blank first line

==== ChangeLog ====
2009-03-20 03:09:55+00:00, davehart at shiny.ad.hartbrothers.com +0 -1
  remove blank first line

--- 1.52/ChangeLog	2009-03-19 22:08:46 -05:00
+++ 1.53/ChangeLog	2009-03-19 22:09:55 -05:00
@@ -1,4 +1,3 @@
-
 * [Bug 1117] Deferred interface binding under Windows works only correctly
   if FORCE_DNSRETRY is defined
 * [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU

#### ChangeSet ####
2009-03-20 01:46:15+00:00, davehart at shiny.ad.hartbrothers.com 
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

==== ChangeLog ====
2009-03-20 01:46:11+00:00, davehart at shiny.ad.hartbrothers.com +2 -0
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.50/ChangeLog	2009-01-08 06:21:25 -05:00
+++ 1.50.4.1/ChangeLog	2009-03-19 20:46:11 -05:00
@@ -1,3 +1,5 @@
+* [Bug 873] Windows serial refclock proper TTY line discipline emulation
+
 ---
 (4.2.4p6) 2009/01/08 Released by Harlan Stenn <stenn at ntp.org>
 

==== ntpd/ntp_io.c ====
2009-03-20 01:46:11+00:00, davehart at shiny.ad.hartbrothers.com +26 -23
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.256/ntpd/ntp_io.c	2008-04-03 09:19:00 -05:00
+++ 1.256.1.1/ntpd/ntp_io.c	2009-03-19 20:46:11 -05:00
@@ -477,6 +477,8 @@ void
 init_io(void)
 {
 #ifdef SYS_WINNT
+	init_io_completion_port();
+
 	if (!Win32InitSockets())
 	{
 		netsyslog(LOG_ERR, "No useable winsock.dll: %m");
@@ -1184,7 +1186,7 @@ update_interfaces(
 		scan_ipv6 = ISC_TRUE;
 #if defined(DEBUG)
 	else
-		if(debug)
+		if (debug)
 			netsyslog(LOG_ERR, "no IPv6 interfaces found");
 #endif
 #endif
@@ -1192,7 +1194,7 @@ update_interfaces(
 		scan_ipv6 = ISC_TRUE;
 #if defined(ISC_PLATFORM_HAVEIPV6) && defined(DEBUG)
 	else
-		if(debug)
+		if (debug)
 			netsyslog(LOG_ERR, "no IPv6 interfaces found");
 #endif
 
@@ -1508,13 +1510,14 @@ create_interface(
  */
 static void
 set_reuseaddr(int flag) {
-        struct interface *interf;
+	struct interface *interf;
 
 	for (interf = ISC_LIST_HEAD(inter_list);
 	     interf != NULL;
 	     interf = ISC_LIST_NEXT(interf, link)) {
-	        if (interf->flags & INT_WILDCARD)
-		        continue;
+
+		if (interf->flags & INT_WILDCARD)
+			continue;
 	  
 		/*
 		 * if interf->fd  is INVALID_SOCKET, we might have a adapter
@@ -1691,7 +1694,7 @@ enable_multicast_if(struct interface *if
 	case AF_INET6:
 #ifdef INCLUDE_IPV6_MULTICAST_SUPPORT
 		if (setsockopt(iface->fd, IPPROTO_IPV6, IPV6_MULTICAST_IF,
-		    &iface->scopeid, sizeof(iface->scopeid)) == -1) {
+		    (char *) &iface->scopeid, sizeof(iface->scopeid)) == -1) {
 			netsyslog(LOG_ERR,
 			"setsockopt IPV6_MULTICAST_IF failure: %m on socket %d, addr %s, scope %d for multicast address %s",
 			iface->fd, stoa(&iface->sin), iface->scopeid,
@@ -1703,7 +1706,7 @@ enable_multicast_if(struct interface *if
 		 * Don't send back to itself, but allow it to fail to set it
 		 */
 		if (setsockopt(iface->fd, IPPROTO_IPV6, IPV6_MULTICAST_LOOP,
-		       &off, sizeof(off)) == -1) {
+		       (char *) &off, sizeof(off)) == -1) {
 			netsyslog(LOG_ERR,
 			"setsockopt IP_MULTICAST_LOOP failure: %m on socket %d, addr %s for multicast address %s",
 			iface->fd, stoa(&iface->sin), stoa(maddr));
@@ -1981,7 +1984,10 @@ io_multicast_add(
 	)
 {
 #ifdef MCAST
-        struct interface *interface, *iface;
+	struct interface *interface;
+#ifndef MULTICAST_NONEWSOCKET
+	struct interface *iface;
+#endif
 	int lscope = 0;
 	
 	/*
@@ -2496,9 +2502,6 @@ sendpkt(
 	)
 {
 	int cc, slot;
-#ifdef SYS_WINNT
-	DWORD err;
-#endif /* SYS_WINNT */
 
 	/*
 	 * Send error caches. Empty slots have port == 0
@@ -2618,8 +2621,8 @@ sendpkt(
 #endif /* INCLUDE_IPV6_SUPPORT */
 
 #if defined(HAVE_IO_COMPLETION_PORT)
-        err = io_completion_port_sendto(inter, pkt, len, dest);
-	if (err != ERROR_SUCCESS)
+        cc = io_completion_port_sendto(inter, pkt, len, dest);
+	if (cc != ERROR_SUCCESS)
 #else
 #ifdef SIM
         cc = srvr_rply(&ntp_node,  dest, inter, pkt);
@@ -2632,9 +2635,9 @@ sendpkt(
 	{
 		inter->notsent++;
 		packets_notsent++;
+
 #if defined(HAVE_IO_COMPLETION_PORT)
-		err = WSAGetLastError();
-		if (err != WSAEWOULDBLOCK && err != WSAENOBUFS && slot < 0)
+		if (cc != WSAEWOULDBLOCK && cc != WSAENOBUFS && slot < 0)
 #else
 		if (errno != EWOULDBLOCK && errno != ENOBUFS && slot < 0)
 #endif
@@ -2659,13 +2662,13 @@ sendpkt(
 			case AF_INET6 :
 
 				for (slot = ERRORCACHESIZE; --slot >= 0; )
-        				if (badaddrs6[slot].port == 0)
-            				{
-                                    		badaddrs6[slot].port = SRCPORT(dest);
-                                    		badaddrs6[slot].addr = ((struct sockaddr_in6*)dest)->sin6_addr;
-                                    		break;
-                            		}
-                		break;
+					if (badaddrs6[slot].port == 0)
+					{
+						badaddrs6[slot].port = SRCPORT(dest);
+						badaddrs6[slot].addr = ((struct sockaddr_in6*)dest)->sin6_addr;
+						break;
+					}
+				break;
 #endif /* INCLUDE_IPV6_SUPPORT */
 			default:  /* don't care if not supported */
 				break;
@@ -3207,7 +3210,7 @@ findlocalinterface(
 	struct interface *iface;
 
 	DPRINTF(4, ("Finding interface for addr %s in list of addresses\n",
-		    stoa(addr));)
+		    stoa(addr)));
 
 	memset(&saddr, 0, sizeof(saddr));
 	saddr.ss_family = addr->ss_family;

==== ntpd/ntpd.c ====
2009-03-20 01:46:12+00:00, davehart at shiny.ad.hartbrothers.com +14 -25
  slightly reduce #ifdef SYS_WINNT forest

--- 1.85/ntpd/ntpd.c	2008-02-17 03:34:13 -05:00
+++ 1.86/ntpd/ntpd.c	2009-03-19 20:46:12 -05:00
@@ -26,30 +26,22 @@
 # include <sys/stat.h>
 #endif
 #include <stdio.h>
-#ifndef SYS_WINNT
-# if !defined(VMS)	/*wjm*/
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#  endif
-# endif /* VMS */
-# ifdef HAVE_SYS_SIGNAL_H
-#  include <sys/signal.h>
-# else
-#  include <signal.h>
+#if !defined(VMS)	/*wjm*/
+# ifdef HAVE_SYS_PARAM_H
+#  include <sys/param.h>
 # endif
-# ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-# endif /* HAVE_SYS_IOCTL_H */
-# ifdef HAVE_SYS_RESOURCE_H
-#  include <sys/resource.h>
-# endif /* HAVE_SYS_RESOURCE_H */
+#endif /* VMS */
+#ifdef HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
 #else
 # include <signal.h>
-# include <process.h>
-# include <io.h>
-# include <clockstuff.h>
-#include "ntp_iocompletionport.h"
-#endif /* SYS_WINNT */
+#endif
+#ifdef HAVE_SYS_IOCTL_H
+# include <sys/ioctl.h>
+#endif /* HAVE_SYS_IOCTL_H */
+#ifdef HAVE_SYS_RESOURCE_H
+# include <sys/resource.h>
+#endif /* HAVE_SYS_RESOURCE_H */
 #if defined(HAVE_RTPRIO)
 # ifdef HAVE_SYS_RESOURCE_H
 #  include <sys/resource.h>
@@ -821,9 +813,6 @@ ntpdmain(
 	init_restrict();
 	init_mon();
 	init_timer();
-#if defined (HAVE_IO_COMPLETION_PORT)
-	init_io_completion_port();
-#endif
 	init_lib();
 	init_request();
 	init_control();
@@ -993,7 +982,7 @@ getgroup:	
 #if defined(HAVE_IO_COMPLETION_PORT)
 
 	for (;;) {
-		int tot_full_recvbufs = GetReceivedBuffers();
+		GetReceivedBuffers();
 #else /* normal I/O */
 
 	BLOCK_IO_AND_ALARM();

==== ntpd/refclock_dumbclock.c ====
2009-03-20 01:46:12+00:00, davehart at shiny.ad.hartbrothers.com +6 -5
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.8/ntpd/refclock_dumbclock.c	2002-11-24 23:18:55 -05:00
+++ 1.9/ntpd/refclock_dumbclock.c	2009-03-19 20:46:12 -05:00
@@ -12,11 +12,6 @@
 #include <config.h>
 #endif
 
-#if defined(SYS_WINNT)
-#undef close
-#define close closesocket
-#endif
-
 #if defined(REFCLOCK) && defined(CLOCK_DUMBCLOCK)
 
 #include "ntpd.h"
@@ -27,6 +22,12 @@
 
 #include <stdio.h>
 #include <ctype.h>
+
+#ifdef SYS_WINNT
+extern int async_write(int, const void *, unsigned int);
+#undef write
+#define write(fd, data, octets)	async_write(fd, data, octets)
+#endif
 
 /*
  * This driver supports a generic dumb clock that only outputs hh:mm:ss,

==== ntpd/refclock_hopfser.c ====
2009-03-20 01:46:12+00:00, davehart at shiny.ad.hartbrothers.com +6 -5
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.9/ntpd/refclock_hopfser.c	2005-09-24 23:17:43 -04:00
+++ 1.10/ntpd/refclock_hopfser.c	2009-03-19 20:46:12 -05:00
@@ -14,11 +14,6 @@
 # include "config.h"
 #endif
 
-#if defined(SYS_WINNT)
-#undef close
-#define close closesocket
-#endif
-
 #if defined(REFCLOCK) && (defined(CLOCK_HOPF_SERIAL))
 
 #include "ntpd.h"
@@ -49,6 +44,12 @@
 
 #ifdef HAVE_SYS_IOCTL_H
 # include <sys/ioctl.h>
+#endif
+
+#ifdef SYS_WINNT
+extern int async_write(int, const void *, unsigned int);
+#undef write
+#define write(fd, data, octets)	async_write(fd, data, octets)
 #endif
 
 /*

==== ntpd/refclock_nmea.c ====
2009-03-20 01:46:12+00:00, davehart at shiny.ad.hartbrothers.com +6 -5
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.25/ntpd/refclock_nmea.c	2004-12-11 22:28:44 -05:00
+++ 1.26/ntpd/refclock_nmea.c	2009-03-19 20:46:12 -05:00
@@ -7,11 +7,6 @@
 #include <config.h>
 #endif
 
-#if defined(SYS_WINNT)
-#undef close
-#define close closesocket
-#endif
-
 #if defined(REFCLOCK) && defined(CLOCK_NMEA)
 
 #include <stdio.h>
@@ -26,6 +21,12 @@
 #ifdef HAVE_PPSAPI
 # include "ppsapi_timepps.h"
 #endif /* HAVE_PPSAPI */
+
+#ifdef SYS_WINNT
+extern int async_write(int, const void *, unsigned int);
+#undef write
+#define write(fd, data, octets)	async_write(fd, data, octets)
+#endif
 
 /*
  * This driver supports the NMEA GPS Receiver with

==== ntpd/refclock_palisade.c ====
2009-03-20 01:46:12+00:00, davehart at shiny.ad.hartbrothers.com +6 -5
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.18/ntpd/refclock_palisade.c	2003-11-25 15:08:11 -05:00
+++ 1.19/ntpd/refclock_palisade.c	2009-03-19 20:46:12 -05:00
@@ -56,12 +56,13 @@
 #include "config.h"
 #endif
 
-#if defined(SYS_WINNT)
-#undef close
-#define close closesocket
-#endif
-
 #if defined(REFCLOCK) && (defined(PALISADE) || defined(CLOCK_PALISADE))
+
+#ifdef SYS_WINNT
+extern int async_write(int, const void *, unsigned int);
+#undef write
+#define write(fd, data, octets)	async_write(fd, data, octets)
+#endif
 
 #include "refclock_palisade.h"
 /* Table to get from month to day of the year */

==== ports/winnt/include/ntp_iocompletionport.h ====
2009-03-20 01:46:13+00:00, davehart at shiny.ad.hartbrothers.com +8 -9
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.13/ports/winnt/include/ntp_iocompletionport.h	2007-06-23 08:42:41 -04:00
+++ 1.14/ports/winnt/include/ntp_iocompletionport.h	2009-03-19 20:46:13 -05:00
@@ -3,26 +3,25 @@
 
 #include "ntp_fp.h"
 #include "ntp.h"
+#include "clockstuff.h"
 
 # if defined(HAVE_IO_COMPLETION_PORT)
 
-struct refclockio;
-
-
 extern	void	init_io_completion_port (void);
 extern	void	uninit_io_completion_port (void);
 
-extern	int	io_completion_port_add_clock_io	(struct refclockio * /*rio */);
-
 extern	int	io_completion_port_add_socket (SOCKET fd, struct interface *);
 
-extern	DWORD	io_completion_port_sendto (struct interface *, struct pkt *, int, struct sockaddr_storage*);
+struct refclockio; /* in ntp_refclock.h but inclusion here triggers problems */
+extern	int	io_completion_port_add_clock_io (struct refclockio *rio);
+
+extern	int	io_completion_port_sendto (struct interface *, struct pkt *, int, struct sockaddr_storage*);
 
-extern	HANDLE get_io_event (void);
+extern	HANDLE	get_io_event (void);
 
-extern HANDLE get_exit_event(void);		/* Handle of the exit event */
+extern	HANDLE	get_exit_event (void);		/* Handle of the exit event */
 
-int GetReceivedBuffers(void);
+extern	int	GetReceivedBuffers (void);
 
 # endif
 

==== ports/winnt/ntpd/ntp_iocompletionport.c ====
2009-03-20 01:46:13+00:00, davehart at shiny.ad.hartbrothers.com +331 -249
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.26/ports/winnt/ntpd/ntp_iocompletionport.c	2008-08-05 03:56:08 -04:00
+++ 1.26.1.1/ports/winnt/ntpd/ntp_iocompletionport.c	2009-03-19 20:46:13 -05:00
@@ -25,8 +25,9 @@
 enum {
 	SOCK_RECV,
 	SOCK_SEND,
-	CLOCK_READ,
-	CLOCK_WRITE
+	SERIAL_WAIT,
+	SERIAL_READ,
+	SERIAL_WRITE
 };
 
 
@@ -42,16 +43,31 @@ typedef struct IoCompletionInfo {
 #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
+
 /*
  * local function definitions
  */
-static int QueueIORead( struct refclockio *, recvbuf_t *buff, IoCompletionInfo *lpo);
+static int QueueSerialWait(struct refclockio *, recvbuf_t *buff, IoCompletionInfo *lpo, BOOL clear_timestamp);
 
-static int OnSocketRecv(DWORD, IoCompletionInfo *, DWORD, int);
-static int OnIoReadComplete(DWORD, IoCompletionInfo *, DWORD, int);
-static int OnWriteComplete(DWORD, IoCompletionInfo *, DWORD, int);
+static int OnSocketRecv(ULONG_PTR, IoCompletionInfo *, DWORD, int);
+static int OnSerialWaitComplete(ULONG_PTR, IoCompletionInfo *, DWORD, int);
+static int OnSerialReadComplete(ULONG_PTR, IoCompletionInfo *, DWORD, int);
+static int OnWriteComplete(ULONG_PTR, IoCompletionInfo *, DWORD, int);
 
+/* #define USE_HEAP */
+
+#ifdef USE_HEAP
 static HANDLE hHeapHandle = NULL;
+#endif
 
 static HANDLE hIoCompletionPort = NULL;
 
@@ -61,8 +77,6 @@ static HANDLE WaitableExitEventHandle = 
 #define MAXHANDLES 3
 HANDLE WaitHandles[MAXHANDLES] = { NULL, NULL, NULL };
 
-#define USE_HEAP
-
 IoCompletionInfo *
 GetHeapAlloc(char *fromfunc)
 {
@@ -73,25 +87,17 @@ GetHeapAlloc(char *fromfunc)
 			     HEAP_ZERO_MEMORY,
 			     sizeof(IoCompletionInfo));
 #else
-	lpo = (IoCompletionInfo *) calloc(1, sizeof(IoCompletionInfo));
-#endif
-#ifdef DEBUG
-	if (debug > 3) {
-		printf("Allocation %d memory for %s, ptr %x\n", sizeof(IoCompletionInfo), fromfunc, lpo);
-	}
+	lpo = (IoCompletionInfo *) calloc(1, sizeof(*lpo));
 #endif
+	DPRINTF(3, ("Allocation %d memory for %s, ptr %x\n", sizeof(IoCompletionInfo), fromfunc, lpo));
+
 	return (lpo);
 }
 
 void
 FreeHeap(IoCompletionInfo *lpo, char *fromfunc)
 {
-#ifdef DEBUG
-	if (debug > 3)
-	{
-		printf("Freeing memory for %s, ptr %x\n", fromfunc, lpo);
-	}
-#endif
+	DPRINTF(3, ("Freeing memory for %s, ptr %x\n", fromfunc, lpo));
 
 #ifdef USE_HEAP
 	HeapFree(hHeapHandle, 0, lpo);
@@ -103,7 +109,7 @@ FreeHeap(IoCompletionInfo *lpo, char *fr
 transmitbuf_t *
 get_trans_buf()
 {
-	transmitbuf_t *tb  = calloc(sizeof(transmitbuf_t), 1);
+	transmitbuf_t *tb  = (transmitbuf_t *) emalloc(sizeof(transmitbuf_t));
 	tb->wsabuf.len = 0;
 	tb->wsabuf.buf = (char *) &tb->pkt;
 	return (tb);
@@ -133,19 +139,21 @@ static void
 signal_io_completion_port_exit()
 {
 	if (!PostQueuedCompletionStatus(hIoCompletionPort, 0, 0, 0)) {
-		msyslog(LOG_ERR, "Can't request service thread to exit: %m");
-		exit(1);
+		DPRINTF(1, ("Can't request IO thread to exit: %d\n", GetLastError()));
 	}
 }
 
-static void
+static unsigned WINAPI
 iocompletionthread(void *NotUsed)
 {
 	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); */
 
 	/*	Set the thread priority high enough so I/O will
 	 *	preempt normal recv packet processing, but not
@@ -156,39 +164,48 @@ iocompletionthread(void *NotUsed)
 	}
 
 	while (TRUE) {
-		bSuccess = GetQueuedCompletionStatus(hIoCompletionPort, 
-					  &BytesTransferred, 
-					  &Key, 
-					  & (LPOVERLAPPED) lpo, 
-					  INFINITE);
+		bSuccess = GetQueuedCompletionStatus(
+					hIoCompletionPort, 
+					&BytesTransferred, 
+					&Key, 
+					(LPOVERLAPPED *) &lpo, 
+					INFINITE);
 		if (lpo == NULL)
 		{
-#ifdef DEBUG
-			if (debug > 2) {
-				printf("Overlapped IO Thread Exits: \n");
-			}
-#endif
+			DPRINTF(2, ("Overlapped IO Thread Exiting\n"));
 			break; /* fail */
 		}
 		
 		/*
 		 * Deal with errors
 		 */
-		errstatus = 0;
-		if (!bSuccess)
+		if (bSuccess)
+			errstatus = 0;
+		else
 		{
 			errstatus = GetLastError();
-			if (BytesTransferred == 0 && errstatus == WSA_OPERATION_ABORTED)
+			if (BytesTransferred == 0)
 			{
-#ifdef DEBUG
-				if (debug > 2) {
-					printf("Transfer Operation aborted\n");
+				if (WSA_OPERATION_ABORTED == errstatus) {
+					DPRINTF(4, ("Transfer Operation aborted\n"));
+				} else if (ERROR_UNEXP_NET_ERR == errstatus) {
+					/*
+					 * We get this error when trying to send an the network
+					 * interface is gone or has lost link.  Rescan interfaces
+					 * to catch on sooner, but no more than once per minute.
+					 * Once ntp is able to detect changes without polling
+					 * this should be unneccessary
+					 */
+					if (time_next_ifscan_after_error < current_time) {
+						time_next_ifscan_after_error = current_time + 60;
+						timer_interfacetimeout(current_time);
+					}
+					DPRINTF(4, ("sendto unexpected network error, interface may be down\n"));
 				}
-#endif
 			}
 			else
 			{
-				msyslog(LOG_ERR, "Error transferring packet after %d bytes: %m", BytesTransferred);
+				msyslog(LOG_ERR, "sendto error after %d bytes: %m", BytesTransferred);
 			}
 		}
 
@@ -198,26 +215,27 @@ iocompletionthread(void *NotUsed)
 		 */
 		switch(lpo->request_type)
 		{
-		case CLOCK_READ:
-			OnIoReadComplete(Key, lpo, BytesTransferred, errstatus);
+		case SERIAL_WAIT:
+			OnSerialWaitComplete(Key, lpo, BytesTransferred, errstatus);
+			break;
+		case SERIAL_READ:
+			OnSerialReadComplete(Key, lpo, BytesTransferred, errstatus);
 			break;
 		case SOCK_RECV:
 			OnSocketRecv(Key, lpo, BytesTransferred, errstatus);
 			break;
 		case SOCK_SEND:
-		case CLOCK_WRITE:
+		case SERIAL_WRITE:
 			OnWriteComplete(Key, lpo, BytesTransferred, errstatus);
 			break;
 		default:
-#if DEBUG
-			if (debug > 2) {
-				printf("Unknown request type %d found in completion port\n",
-					lpo->request_type);
-			}
-#endif
+			DPRINTF(1, ("Unknown request type %d found in completion port\n",
+				    lpo->request_type));
 			break;
 		}
 	}
+
+	return 0;
 }
 
 /*  Create/initialise the I/O creation port
@@ -227,7 +245,10 @@ init_io_completion_port(
 	void
 	)
 {
+	unsigned tid;
+	HANDLE thread;
 
+#ifdef USE_HEAP
 	/*
 	 * Create a handle to the Heap
 	 */
@@ -237,33 +258,29 @@ init_io_completion_port(
 		msyslog(LOG_ERR, "Can't initialize Heap: %m");
 		exit(1);
 	}
-
+#endif
 
 	/* Create the event used to signal an IO event
 	 */
-	WaitableIoEventHandle = CreateEvent(NULL, FALSE, FALSE, "WaitableIoEventHandle");
-	if (WaitableIoEventHandle == NULL) {
-		msyslog(LOG_ERR,
-		"Can't create I/O event handle: %m - another process may be running - EXITING");
-		exit(1);
-	}
+	WaitableIoEventHandle = CreateEvent(NULL, FALSE, FALSE, NULL);
+
 	/* Create the event used to signal an exit event
 	 */
-	WaitableExitEventHandle = CreateEvent(NULL, FALSE, FALSE, "WaitableExitEventHandle");
-	if (WaitableExitEventHandle == NULL) {
-		msyslog(LOG_ERR,
-		"Can't create exit event handle: %m - another process may be running - EXITING");
-		exit(1);
-	}
+	WaitableExitEventHandle = CreateEvent(NULL, FALSE, FALSE, NULL);
 
 	/* Create the IO completion port
 	 */
 	hIoCompletionPort = CreateIoCompletionPort(INVALID_HANDLE_VALUE, NULL, 0, 0);
-	if (hIoCompletionPort == NULL) {
-		msyslog(LOG_ERR, "Can't create I/O completion port: %m");
+
+#ifdef DEBUG
+	if (NULL == WaitableExitEventHandle || 
+	    NULL == WaitableIoEventHandle ||
+	    NULL == hIoCompletionPort) {
+		DPRINTF(1, ("init_io_completion_port: Can't create event or port\n"));
 		exit(1);
 	}
-	
+#endif
+
 	/*
 	 * Initialize the Wait Handles
 	 */
@@ -274,7 +291,15 @@ init_io_completion_port(
 	/* Have one thread servicing I/O - there were 4, but this would 
 	 * somehow cause NTP to stop replying to ntpq requests; TODO
  	 */
-	_beginthread(iocompletionthread, 0, NULL);
+	thread = (HANDLE)_beginthreadex(
+		NULL, 
+		0, 
+		iocompletionthread, 
+		NULL, 
+		CREATE_SUSPENDED, 
+		&tid);
+	ResumeThread(thread);
+	CloseHandle(thread);
 }
 	
 
@@ -291,25 +316,18 @@ uninit_io_completion_port(
 }
 
 
-static int QueueIORead( struct refclockio *rio, recvbuf_t *buff, IoCompletionInfo *lpo) {
-
-	lpo->request_type = CLOCK_READ;
+static int QueueSerialWait(struct refclockio *rio, recvbuf_t *buff, IoCompletionInfo *lpo, BOOL clear_timestamp)
+{
+	lpo->request_type = SERIAL_WAIT;
 	lpo->recv_buf = buff;
 
-	buff->fd = rio->fd;
-	if (!ReadFile((HANDLE) buff->fd, buff->wsabuff.buf, buff->wsabuff.len, NULL, (LPOVERLAPPED) lpo)) {
-		DWORD Result = GetLastError();
-		switch (Result) {				
-		case NO_ERROR :
-		case ERROR_HANDLE_EOF :
-		case ERROR_IO_PENDING :
-			break ;
+	if (clear_timestamp)
+		memset(&buff->recv_time, 0, sizeof(buff->recv_time));
 
-		/*
-		 * Something bad happened
-		 */
-		default:
-			msyslog(LOG_ERR, "Can't read from Refclock: %m");
+	buff->fd = _get_osfhandle(rio->fd);
+	if (!WaitCommEvent((HANDLE) buff->fd, (DWORD *)&buff->recv_buffer, (LPOVERLAPPED) lpo)) {
+		if (ERROR_IO_PENDING != GetLastError()) {
+			msyslog(LOG_ERR, "Can't wait on Refclock: %m");
 			freerecvbuf(buff);
 			return 0;
 		}
@@ -318,60 +336,135 @@ static int QueueIORead( struct refclocki
 }
 
 
-
-/* Return 1 on Successful Read */
 static int 
-OnIoReadComplete(DWORD i, IoCompletionInfo *lpo, DWORD Bytes, int errstatus)
+OnSerialWaitComplete(ULONG_PTR i, IoCompletionInfo *lpo, DWORD Bytes, int errstatus)
 {
 	recvbuf_t *buff;
-	recvbuf_t *newbuff;
 	struct refclockio * rio = (struct refclockio *) i;
+	struct peer *pp;
 	l_fp arrival_time;
+	DWORD comm_mask;
+	DWORD modem_status;
+	static const l_fp zero_time = { 0 };
+	DWORD dwBytesReturned;
+	BOOL rc;
 
 	get_systime(&arrival_time);
 
 	/*
 	 * Get the recvbuf pointer from the overlapped buffer.
 	 */
-	buff = (recvbuf_t *) lpo->recv_buf;
-	/*
-	 * Get a new recv buffer for the next packet
-	 */
-	newbuff = get_free_recv_buffer_alloc();
-	if (newbuff == NULL) {
-		/*
-		 * recv buffers not available so we drop the packet
-		 * and reuse the buffer.
-		 */
-		newbuff = buff;
-	}
-	else 
-	{
+	buff = lpo->recv_buf;
+	comm_mask = (*(DWORD *)&buff->recv_buffer);
+#ifdef DEBUG
+		if (errstatus || comm_mask & ~(EV_RXFLAG | EV_RLSD)) {
+			msyslog(LOG_ERR, "WaitCommEvent returned unexpected mask %x errstatus %d",
+				comm_mask, errstatus);
+			exit(-1);
+		}
+#endif
+		if (comm_mask & EV_RLSD) { 
+			modem_status = 0;
+			GetCommModemStatus((HANDLE)buff->fd, &modem_status);
+			if (modem_status & MS_RLSD_ON) {
+				/*
+				 * Use the timestamp from this PPS CD not
+				 * the later end of line.
+				 */
+				buff->recv_time = arrival_time;
+			}
+
+			if (!(comm_mask & EV_RXFLAG)) {
+				/*
+				 * if we didn't see an end of line yet
+				 * issue another wait for it.
+				 */
+				QueueSerialWait(rio, buff, lpo, FALSE);
+				return 1;
+			}
+		}
+
 		/*
-		 * ignore 0 bytes read due to timeout's and closure on fd
+		 * We've detected the end of line of serial input.
+		 * Use this timestamp unless we already have a CD PPS
+		 * timestamp in buff->recv_time.
 		 */
-		if (Bytes > 0 && errstatus != WSA_OPERATION_ABORTED) {
-			memcpy(&buff->recv_time, &arrival_time, sizeof(arrival_time));	
-			buff->recv_length = (int) Bytes;
-			buff->receiver = rio->clock_recv;
-			buff->dstadr = NULL;
-			buff->recv_srcclock = rio->srcclock;
-			add_full_recv_buffer(buff);
-			if( !SetEvent( WaitableIoEventHandle ) ) {
-#ifdef DEBUG
-				if (debug > 3) {
-					printf( "Error %d setting IoEventHandle\n", GetLastError() );
-				}
-#endif
+		if (memcmp(&buff->recv_time, &zero_time, sizeof buff->recv_time)) {
+			/*
+			 * We will first see a user PPS timestamp here on either
+			 * the first or second line of text.  Log a one-time
+			 * message while processing the second line.
+			 */
+			if (1 == rio->recvcount) {
+				pp = (struct peer *)rio->srcclock;
+				msyslog(LOG_NOTICE, "Using user-mode PPS timestamp for %s",
+					refnumtoa(&pp->srcadr));
 			}
+		} else {
+			buff->recv_time = arrival_time;
 		}
-		else
-		{
+
+		/*
+		 * Now that we have a complete line waiting, read it.
+		 * There is still a race here, but we're likely to win.
+		 */
+
+		lpo->request_type = SERIAL_READ;
+
+		rc = ReadFile(
+			(HANDLE)buff->fd,
+			buff->wsabuff.buf,
+			buff->wsabuff.len,
+			&buff->wsabuff.len,
+			(LPOVERLAPPED) lpo);
+
+		if (!rc && ERROR_IO_PENDING != GetLastError()) {
+			msyslog(LOG_ERR, "Can't read from Refclock: %m");
 			freerecvbuf(buff);
+			return 0;
+		}
+
+	return 1;
+}
+
+/* Return 1 on Successful Read */
+static int 
+OnSerialReadComplete(ULONG_PTR i, IoCompletionInfo *lpo, DWORD Bytes, int errstatus)
+{
+	recvbuf_t *buff;
+	struct refclockio * rio = (struct refclockio *) i;
+
+	/*
+	 * Get the recvbuf pointer from the overlapped buffer.
+	 */
+	buff = lpo->recv_buf;
+
+	/*
+	 * ignore 0 bytes read due to timeout's and closure on fd
+	 */
+	if (!errstatus && Bytes) {
+		buff->recv_length = (int) Bytes;
+		buff->receiver = rio->clock_recv;
+		buff->dstadr = NULL;
+		buff->recv_srcclock = rio->srcclock;
+		packets_received++;
+		/*
+		 * Eat the first line of input as it's possibly
+		 * partial and if a PPS is present, it may not 
+		 * have fired since the port was opened.
+		 */
+		if (rio->recvcount++) {
+			add_full_recv_buffer(buff);
+			/*
+			 * Now signal we have something to process
+			 */
+			SetEvent(WaitableIoEventHandle);
+			buff = get_free_recv_buffer_alloc();
 		}
 	}
 
-	QueueIORead( rio, newbuff, lpo );
+	QueueSerialWait(rio, buff, lpo, TRUE);
+
 	return 1;
 }
 
@@ -386,7 +479,7 @@ io_completion_port_add_clock_io(
 	IoCompletionInfo *lpo;
 	recvbuf_t *buff;
 
-	if (NULL == CreateIoCompletionPort((HANDLE) rio->fd, hIoCompletionPort, (DWORD) rio, 0)) {
+	if (NULL == CreateIoCompletionPort((HANDLE)_get_osfhandle(rio->fd), hIoCompletionPort, (ULONG_PTR) rio, 0)) {
 		msyslog(LOG_ERR, "Can't add COM port to i/o completion port: %m");
 		return 1;
 	}
@@ -399,19 +492,16 @@ io_completion_port_add_clock_io(
 	}
 
 	buff = get_free_recv_buffer_alloc();
-
-	if (buff == NULL)
-	{
-		msyslog(LOG_ERR, "Can't allocate memory for clock socket: %m");
-		FreeHeap(lpo, "io_completion_port_add_clock_io");
-		return 1;
-	}
-	QueueIORead( rio, buff, lpo );
+	QueueSerialWait(rio, buff, lpo, TRUE);
 	return 0;
 }
 
-/* Queue a receiver on a socket. Returns 0 if no buffer can be queued */
-
+/*
+ * Queue a receiver on a socket. Returns 0 if no buffer can be queued 
+ *
+ *  Note: As per the winsock documentation, we use WSARecvFrom. Using
+ *        ReadFile() is less efficient.
+ */
 static unsigned long QueueSocketRecv(SOCKET s, recvbuf_t *buff, IoCompletionInfo *lpo) {
 	
 	int AddrLen;
@@ -433,8 +523,6 @@ static unsigned long QueueSocketRecv(SOC
 			DWORD Result = WSAGetLastError();
 			switch (Result) {
 				case NO_ERROR :
-				case WSA_IO_INCOMPLETE :
-				case WSA_WAIT_IO_COMPLETION :
 				case WSA_IO_PENDING :
 					break ;
 
@@ -465,7 +553,7 @@ static unsigned long QueueSocketRecv(SOC
 
 /* Returns 0 if any Error */
 static int 
-OnSocketRecv(DWORD i, IoCompletionInfo *lpo, DWORD Bytes, int errstatus)
+OnSocketRecv(ULONG_PTR i, IoCompletionInfo *lpo, DWORD Bytes, int errstatus)
 {
 	struct recvbuf *buff = NULL;
 	recvbuf_t *newbuff;
@@ -473,7 +561,7 @@ OnSocketRecv(DWORD i, IoCompletionInfo *
 	l_fp arrival_time;
 	struct interface * inter = (struct interface *) i;
 	
-	get_systime(&arrival_time);	
+	get_systime(&arrival_time);
 
 	/*  Convert the overlapped pointer back to a recvbuf pointer.
 	*/
@@ -505,65 +593,49 @@ OnSocketRecv(DWORD i, IoCompletionInfo *
 
 
 	/*
-	 * Get a new recv buffer for the next packet
+	 * Get a new recv buffer for the replacement socket receive
 	 */
 	newbuff = get_free_recv_buffer_alloc();
-	if (newbuff == NULL) {
-		/*
-		 * recv buffers not available so we drop the packet
-		 * and reuse the buffer.
-		 */
-		newbuff = buff;
-	}
-	else 
-	{
-		ignore_this = inter->ignore_packets;
+	QueueSocketRecv(inter->fd, newbuff, lpo);
 
+	ignore_this = inter->ignore_packets;
+
+	/*
+	 * If we keep it add some info to the structure
+	 */
+	if (Bytes > 0 && ignore_this == ISC_FALSE) {
+		memcpy(&buff->recv_time, &arrival_time, sizeof buff->recv_time);	
+		buff->recv_length = (int) Bytes;
+		buff->receiver = receive; 
+		buff->dstadr = inter;
+#ifdef DEBUG
+		if (debug > 1)
+			printf("Received %d bytes of fd %d in buffer %x from %s\n", Bytes, buff->fd, buff, stoa(&buff->recv_srcadr));
+#endif
+		packets_received++;
+		inter->received++;
+		add_full_recv_buffer(buff);
 		/*
-		 * If we keep it add some info to the structure
+		 * Now signal we have something to process
 		 */
-		if (Bytes > 0 && ignore_this == ISC_FALSE) {
-			memcpy(&buff->recv_time, &arrival_time, sizeof(arrival_time));	
-			buff->recv_length = (int) Bytes;
-			buff->receiver = receive; 
-			buff->dstadr = inter;
-#ifdef DEBUG
-			if (debug > 1)
-  				printf("Received %d bytes of fd %d in buffer %x from %s\n", Bytes, buff->fd, buff, stoa(&buff->recv_srcadr));
-#endif
-			add_full_recv_buffer(buff);
-			/*
-			 * Now signal we have something to process
-			 */
-			if( !SetEvent( WaitableIoEventHandle ) ) {
-#ifdef DEBUG
-				if (debug > 1) {
-					printf( "Error %d setting IoEventHandle\n", GetLastError() );
-				}
-#endif
-			}
-		}
-		else {
-			freerecvbuf(buff);
-		}
+		SetEvent(WaitableIoEventHandle);
 	}
-	if (newbuff != NULL)
-		QueueSocketRecv(inter->fd, newbuff, lpo);
+	else
+		freerecvbuf(buff);
+
 	return 1;
 }
 
 
-/*  Add a socket handle to the I/O completion port, and send an I/O
- *  read request to the kernel.
- *
- *  Note: As per the winsock documentation, we use WSARecvFrom. Using
- *        ReadFile() is less efficient.
+/*  Add a socket handle to the I/O completion port, and send 
+ *  NTP_RECVS_PER_SOCKET recv requests to the kernel.
  */
 extern int
 io_completion_port_add_socket(SOCKET fd, struct interface *inter)
 {
 	IoCompletionInfo *lpo;
 	recvbuf_t *buff;
+	int n;
 
 	if (fd != INVALID_SOCKET) {
 		if (NULL == CreateIoCompletionPort((HANDLE) fd, hIoCompletionPort,
@@ -573,37 +645,50 @@ io_completion_port_add_socket(SOCKET fd,
 		}
 	}
 
-	lpo = (IoCompletionInfo *) GetHeapAlloc("io_completion_port_add_socket");
-	if (lpo == NULL)
-	{
-		msyslog(LOG_ERR, "Can't allocate heap for completion port: %m");
-		return 1;
-	}
+#define WINDOWS_RECVS_PER_SOCKET 4
 
-	buff = get_free_recv_buffer_alloc();
+	for (n = 0; n < WINDOWS_RECVS_PER_SOCKET; n++) {
 
-	if (buff == NULL)
-	{
-		msyslog(LOG_ERR, "Can't allocate memory for network socket: %m");
-		FreeHeap(lpo, "io_completion_port_add_socket");
-		return 1;
-	}
+		buff = get_free_recv_buffer_alloc();
+		lpo = (IoCompletionInfo *) GetHeapAlloc("io_completion_port_add_socket");
+		if (lpo == NULL)
+		{
+			msyslog(LOG_ERR, "Can't allocate heap for completion port: %m");
+			return 1;
+		}
 
-	QueueSocketRecv(fd, buff, lpo);
+		QueueSocketRecv(fd, buff, lpo);
+
+	}
 	return 0;
 }
 
 static int 
-OnWriteComplete(DWORD Key, IoCompletionInfo *lpo, DWORD Bytes, int errstatus)
+OnWriteComplete(ULONG_PTR i, IoCompletionInfo *lpo, DWORD Bytes, int errstatus)
 {
 	transmitbuf_t *buff;
-	(void) Bytes;
-	(void) Key;
+	struct interface *inter;
+
+	/* UNUSED_ARG(Bytes); */
 
 	buff = lpo->trans_buf;
 
 	free_trans_buf(buff);
 
+	if (SOCK_SEND == lpo->request_type) {
+		switch (errstatus) {
+		case WSA_OPERATION_ABORTED:
+		case NO_ERROR:
+			break;
+
+		default:
+			inter = (struct interface *)i;
+			packets_notsent++;
+			inter->notsent++;
+			break;
+		}
+	}
+
 	if (errstatus == WSA_OPERATION_ABORTED)
 		FreeHeap(lpo, "OnWriteComplete: Socket Closed");
 	else
@@ -612,7 +697,12 @@ OnWriteComplete(DWORD Key, IoCompletionI
 }
 
 
-DWORD	
+/*
+ * Return value is really GetLastError-style error code
+ * which is a DWORD but using int, which is large enough,
+ * decreases #ifdef forest in ntp_io.c harmlessly.
+ */
+int	
 io_completion_port_sendto(
 	struct interface *inter,	
 	struct pkt *pkt,	
@@ -659,8 +749,6 @@ io_completion_port_sendto(
 			switch (errval) {
 
 			case NO_ERROR :
-			case WSA_IO_INCOMPLETE :
-			case WSA_WAIT_IO_COMPLETION :
 			case WSA_IO_PENDING :
 				Result = ERROR_SUCCESS;
 				break ;
@@ -691,71 +779,65 @@ io_completion_port_sendto(
 
 
 /*
- * Async IO Write
+ * async_write, clone of write(), used by some reflock drivers
  */
-DWORD	
-io_completion_port_write(
-	HANDLE fd,	
-	char *pkt,	
-	int len)
+int	
+async_write(
+	int fd,
+	const void *data,
+	unsigned int count)
 {
-	DWORD errval;
-	transmitbuf_t *buff = NULL;
-	DWORD lpNumberOfBytesWritten;
-	DWORD Result = ERROR_INSUFFICIENT_BUFFER;
+	transmitbuf_t *buff;
 	IoCompletionInfo *lpo;
+	DWORD BytesWritten;
 
-	lpo = (IoCompletionInfo *) GetHeapAlloc("io_completion_port_write");
+	if (count > sizeof buff->pkt) {
+#ifdef DEBUG
+		if (debug) {
+			printf("async_write: %d bytes too large, limit is %d\n",
+				count, sizeof buff->pkt);
+			exit(-1);
+		}
+#endif
+		errno = ENOMEM;
+		return -1;
+	}
 
-	if (lpo == NULL)
-		return ERROR_OUTOFMEMORY;
+	buff = get_trans_buf();
+	lpo = (IoCompletionInfo *) GetHeapAlloc("async_write");
 
-	if (len <= sizeof(buff->pkt)) {
-		buff = get_trans_buf();
-		if (buff == NULL) {
+	if (! buff || ! lpo) {
+		if (buff) {
+			free_trans_buf(buff);
+#ifdef DEBUG
+			if (debug)
+				printf("async_write: out of memory, \n");
+#endif
+		} else {
 			msyslog(LOG_ERR, "No more transmit buffers left - data discarded");
-			FreeHeap(lpo, "io_completion_port_write");
 		}
 
-		lpo->request_type = CLOCK_WRITE;
-		lpo->trans_buf = buff;
-		memcpy(&buff->pkt, pkt, len);
-
-		Result = WriteFile(fd, buff->pkt, len, &lpNumberOfBytesWritten, (LPOVERLAPPED) lpo);
+		errno = ENOMEM;
+		return -1;
+	}
 
-		if(Result == SOCKET_ERROR)
-		{
-			errval = WSAGetLastError();
-			switch (errval) {
+	lpo->request_type = SERIAL_WRITE;
+	lpo->trans_buf = buff;
+	memcpy(&buff->pkt, data, count);
 
-			case NO_ERROR :
-			case WSA_IO_INCOMPLETE :
-			case WSA_WAIT_IO_COMPLETION :
-			case WSA_IO_PENDING :
-				Result = ERROR_SUCCESS;
-				break ;
+	if (! WriteFile((HANDLE)_get_osfhandle(fd), buff->pkt, count, &BytesWritten, (LPOVERLAPPED) lpo) &&
+		ERROR_IO_PENDING != GetLastError()) {
 
-			default :
-				netsyslog(LOG_ERR, "WriteFile - error sending message: %m");
-				free_trans_buf(buff);
-				FreeHeap(lpo, "io_completion_port_write");
-				break;
-			}
-		}
-#ifdef DEBUG
-			if (debug > 2) {
-				printf("WriteFile - %d bytes %d\n", len, Result);
-			}
-#endif
-			if (Result) return len;
+		msyslog(LOG_ERR, "async_write - error %m");
+		free_trans_buf(buff);
+		FreeHeap(lpo, "async_write");
+		errno = EBADF;
+		return -1;
 	}
-	else {
-#ifdef DEBUG
-		if (debug) printf("Packet too large: %d Bytes\n", len);
-#endif
-	}
-	return Result;
+
+	return count;
 }
+
 
 /*
  * GetReceivedBuffers

==== ports/winnt/ntpd/win32_io.c ====
2009-03-20 01:46:13+00:00, davehart at shiny.ad.hartbrothers.com +172 -66
  [Bug 873] Windows serial refclock proper TTY line discipline emulation

--- 1.12/ports/winnt/ntpd/win32_io.c	2006-10-05 06:20:40 -04:00
+++ 1.13/ports/winnt/ntpd/win32_io.c	2009-03-19 20:46:13 -05:00
@@ -1,19 +1,18 @@
-/* This file implementes system calls that are not compatible with UNIX */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
+/* This file implements system calls that are not compatible with UNIX */
 
+#include <config.h>
 #include <stdio.h>
 #include "ntp_machine.h"
 #include "ntp_stdlib.h"
 #include "ntp_syslog.h"
+#include "ntp_debug.h"
 #include "ntp_fp.h"
 #include "ntp.h"
 #include "ntp_refclock.h"
 #include "win32_io.h"
 
+#define MAX_SERIAL 16	/* COM1-COM16 */
+
 
 int NT_set_process_priority(void)
 {
@@ -26,14 +25,100 @@ int NT_set_process_priority(void)
 		return 1;
 }
 
+
+/*
+ * common_serial_open ensures duplicate opens of the same port
+ * work by duplicating the handle for the 2nd open, allowing
+ * refclock_atom to share a GPS refclock's comm port.
+ *
+ */
+
+HANDLE common_serial_open(
+	char *dev
+	)
+{
+	static HANDLE SerialHandles[MAX_SERIAL+1] = {0};
+	HANDLE RetHandle;
+	int unit;
+
+	if (1 != sscanf(dev, "COM%d:", &unit) || unit > MAX_SERIAL)
+		return INVALID_HANDLE_VALUE;
+
+	if (!SerialHandles[unit])
+		SerialHandles[unit] = CreateFile(
+					dev,
+					GENERIC_READ | GENERIC_WRITE,
+					0, /* sharing prohibited */
+					NULL, /* default security */
+					OPEN_EXISTING,
+					FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,
+					NULL);
+
+	if (INVALID_HANDLE_VALUE == SerialHandles[unit]) {
+		SerialHandles[unit] = 0;
+		return INVALID_HANDLE_VALUE;
+	}
+
+	DuplicateHandle(
+		GetCurrentProcess(),
+		SerialHandles[unit],
+		GetCurrentProcess(),
+		&RetHandle,
+		0,
+		FALSE,
+		DUPLICATE_SAME_ACCESS
+		);
+
+	return RetHandle;
+}
+
+/*
+ * pps_open - open serial port for PPS
+ *
+ * This routine opens a serial port for and returns the 
+ * file descriptor if success and -1 if failure.
+ */
+int pps_open(
+	char *dev,		/* device name pointer */
+	int access,		/* O_RDWR */
+	int mode		/* unused */
+	)
+{
+	HANDLE Handle;
+	char windev[3 + 20 + 1 + 1];
+	int unit;
+
+	if (1 != sscanf(dev, "/dev/pps%d", &unit)) {
+		errno = ENOENT;
+		return -1;
+	}
+	/*
+	 * there never is a COM0: but this is the ntp convention
+	 */
+	_snprintf(windev, sizeof(windev)-1, "COM%d:", unit);
+	windev[sizeof(windev)-1] = 0; 
+
+	/*
+	 * open communication port handle
+	 */
+	Handle = common_serial_open(windev);
+
+	if (Handle == INVALID_HANDLE_VALUE) {  
+		msyslog(LOG_ERR, "pps_open: Device %s CreateFile error: %m", windev);
+		errno = EMFILE; /* lie, lacking conversion from GetLastError() */
+		return -1;
+	}
+
+	return (int) _open_osfhandle((int)Handle, _O_TEXT);
+}
+
 /*
  * refclock_open - open serial port for reference clock
  *
  * This routine opens a serial port for I/O and sets default options. It
  * returns the file descriptor if success and zero if failure.
  */
-int
-refclock_open(
+int refclock_open(
 	char *dev,		/* device name pointer */
 	u_int speed,		/* serial port speed (code) */
 	u_int flags		/* line discipline flags */
@@ -41,35 +126,30 @@ refclock_open(
 {
 	HANDLE Handle = INVALID_HANDLE_VALUE;
 	COMMTIMEOUTS timeouts;
-	DCB dcb = {0};
+	DCB dcb;
+
+	/*
+	 * open communication port handle
+	 */
+	Handle = common_serial_open(dev);
 
-	//
-	// open communication port handle
-	//
-	Handle = CreateFile(dev,
-		GENERIC_READ | GENERIC_WRITE,
-		0, // no sharing
-		NULL, // no security
-		OPEN_EXISTING,
-		FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,
-		NULL); // not template
 	if (Handle == INVALID_HANDLE_VALUE) {  
 		 
-		msyslog(LOG_ERR, "NT_COM: Device %s: CreateFile error: %m", dev);
+		msyslog(LOG_ERR, "NT_COM: Device %s CreateFile error: %m", dev);
 		return -1;
 	}
 
 	/*  Change the input/output buffers to be large.
 	*/
 	if (!SetupComm( Handle, 1024, 1024)) {
-		msyslog(LOG_ERR, "NT_COM: Device %s: SetupComm error: %m", dev);
+		msyslog(LOG_ERR, "NT_COM: Device %s SetupComm error: %m", dev);
 		return -1;
 	}
 
 	dcb.DCBlength = sizeof(dcb);
 	if (!GetCommState(Handle, &dcb)) {
 		// Error getting current DCB settings
-		msyslog(LOG_ERR, "NT_COM: Device %s: GetCommState error: %m", dev);
+		msyslog(LOG_ERR, "NT_COM: Device %s GetCommState error: %m", dev);
 		return -1;
 	}
 
@@ -81,20 +161,21 @@ refclock_open(
 	  case B9600 :  dcb.BaudRate = 9600; break;
 	  case B19200 : dcb.BaudRate = 19200; break;
 	  case B38400 : dcb.BaudRate = 38400; break;
+	  case B57600 : dcb.BaudRate = 57600; break;
+	  case B115200 : dcb.BaudRate = 115200; break;
 	  default :
-		msyslog(LOG_ERR, "NT_COM: Device %s: unsupported baud rate", dev);
+		msyslog(LOG_ERR, "NT_COM: Device %s unsupported baud rate", dev);
 		return -1;
 	}
 
 
-	dcb.ByteSize = 8;
 	dcb.fBinary = TRUE;
 	dcb.fParity = TRUE;
 	dcb.fOutxCtsFlow = 0;
 	dcb.fOutxDsrFlow = 0;
 	dcb.fDtrControl = DTR_CONTROL_DISABLE;
 	dcb.fDsrSensitivity = 0;
-	dcb.fTXContinueOnXoff = FALSE;
+	dcb.fTXContinueOnXoff = TRUE;
 	dcb.fOutX = 0; 
 	dcb.fInX = 0;
 	dcb.fErrorChar = 0;
@@ -105,41 +186,56 @@ refclock_open(
 	dcb.StopBits = ONESTOPBIT;
 	dcb.Parity = NOPARITY;
 	dcb.ErrorChar = 0;
-	dcb.EvtChar = 0;
+	dcb.EvtChar = 13; /* CR */
 	dcb.EofChar = 0;
 
 	if (!SetCommState(Handle, &dcb)) {
-		msyslog(LOG_ERR, "NT_COM: Device %s: SetCommState error: %m", dev);
+		msyslog(LOG_ERR, "NT_COM: Device %s SetCommState error: %m", dev);
 		return -1;
 	}
 
-	timeouts.ReadIntervalTimeout = 20; 
+	/* watch out for CR (dcb.EvtChar) as well as the CD line */
+	if (!SetCommMask(Handle, EV_RXFLAG | EV_RLSD)) {
+		msyslog(LOG_ERR, "NT_COM: Device %s SetCommMask error: %m", dev);
+		return -1;
+	}
+
+	/* configure the handle to never block */
+	timeouts.ReadIntervalTimeout = MAXDWORD;
 	timeouts.ReadTotalTimeoutMultiplier = 0;
-	timeouts.ReadTotalTimeoutConstant = 5000;
+	timeouts.ReadTotalTimeoutConstant = 0;
 	timeouts.WriteTotalTimeoutMultiplier = 0;
-	timeouts.WriteTotalTimeoutConstant = 5000;
+	timeouts.WriteTotalTimeoutConstant = 0;
 
-	   // Error setting time-outs.
 	if (!SetCommTimeouts(Handle, &timeouts)) {
-		msyslog(LOG_ERR, "NT_COM: Device %s: SetCommTimeouts error: %m", dev);
+		msyslog(LOG_ERR, "NT_COM: Device %s SetCommTimeouts error: %m", dev);
 		return -1;
 	}
 
-	return (int) Handle;
+	return (int) _open_osfhandle((int)Handle, _O_TEXT);
 }
 
-
 int 
 ioctl(int fd,
-	  int cmd,
-	  int *x) {
+	int cmd,
+	int *x)
+{
+	HANDLE h = (HANDLE) _get_osfhandle(fd);
 
 	if ((cmd == TIOCMSET) && (*x & TIOCM_RTS)) {
-		if (!EscapeCommFunction((HANDLE) fd, SETRTS)) 
+		if (!EscapeCommFunction(h, SETRTS)) 
 			return -1;
 	}
 	else if ((cmd == TIOCMSET) && !(*x & TIOCM_RTS)){
-		if (!EscapeCommFunction((HANDLE) fd, CLRRTS)) 
+		if (!EscapeCommFunction(h, CLRRTS)) 
+			return -1;
+	}
+	if ((cmd == TIOCMSET) && (*x & TIOCM_DTR)) {
+		if (!EscapeCommFunction(h, SETDTR)) 
+			return -1;
+	}
+	else if ((cmd == TIOCMSET) && !(*x & TIOCM_DTR)){
+		if (!EscapeCommFunction(h, CLRDTR)) 
 			return -1;
 	}
 
@@ -154,7 +250,7 @@ tcsetattr(
 	const struct termios * s)
 {
 	DCB dcb = { 0 };
-	HANDLE Handle = (HANDLE) fd;
+	HANDLE Handle = (HANDLE) _get_osfhandle(fd);
 	dcb.DCBlength = sizeof(dcb);
 	if (!GetCommState(Handle, &dcb)) {
 		// Error getting current DCB settings
@@ -170,6 +266,8 @@ tcsetattr(
 		case B9600 :  dcb.BaudRate = 9600; break;
 		case B19200 : dcb.BaudRate = 19200; break;
 		case B38400 : dcb.BaudRate = 38400; break;
+		case B57600 : dcb.BaudRate = 57600; break;
+		case B115200 : dcb.BaudRate = 115200; break;
 		default :
 			msyslog(LOG_ERR, "NT_COM: unsupported baud rate");
 			return FALSE;
@@ -198,24 +296,15 @@ tcsetattr(
 		dcb.fParity = FALSE;
 		dcb.Parity = NOPARITY;
 	}
-
-
-	dcb.fOutxCtsFlow = 0;
-	dcb.fOutxDsrFlow = 0;
-	dcb.fDtrControl = DTR_CONTROL_DISABLE;
-	dcb.fDsrSensitivity = 0;
-	dcb.fOutX = 0; 
-	dcb.fInX = 0;
-	dcb.fErrorChar = 0;
-	dcb.fNull = 0;
-	dcb.fRtsControl = RTS_CONTROL_DISABLE;
-	dcb.fAbortOnError = 0;
-	dcb.ErrorChar = 0;
-	dcb.EvtChar = 0;
-	dcb.EofChar = 0;
+	if (s->c_cflag & CSTOPB ) {
+		dcb.StopBits = TWOSTOPBITS;
+	}
+	else {
+		dcb.StopBits = ONESTOPBIT;
+	}
 
 	if (!SetCommState(Handle, &dcb)) {
-		msyslog(LOG_ERR, "NT_COM: SetCommState error: %m");
+		msyslog(LOG_ERR, "NT_COM: SetCommState error 2: %m");
 		return FALSE;
 	}
 	return TRUE;
@@ -225,11 +314,11 @@ extern	int	
 tcgetattr(
 	int fd, struct termios *s)
 {
-	DCB dcb = { 0 };
-	HANDLE Handle = (HANDLE) fd;
+	DCB dcb;
+	HANDLE Handle = (HANDLE) _get_osfhandle(fd);
+
 	dcb.DCBlength = sizeof(dcb);
 	if (!GetCommState(Handle, &dcb)) {
-		// Error getting current DCB settings
 		msyslog(LOG_ERR, "NT_COM: GetCommState error: %m");
 		return FALSE;
 	}
@@ -244,6 +333,8 @@ tcgetattr(
 		case 9600 : s->c_ispeed = s->c_ospeed = B9600; break;
 		case 19200 : s->c_ispeed = s->c_ospeed = B19200; break;
 		case 38400 : s->c_ispeed = s->c_ospeed = B38400; break;
+		case 57600 : s->c_ispeed = s->c_ospeed = B57600; break;
+		case 115200 : s->c_ispeed = s->c_ospeed = B115200; break;
 		default : s->c_ispeed = s->c_ospeed = B9600;
 	}
 	
@@ -265,6 +356,11 @@ tcgetattr(
 		case ODDPARITY : s->c_cflag |= PARODD; break;
 		case SPACEPARITY : break;
 	}
+	switch (dcb.StopBits) {
+		case ONESTOPBIT : break;
+		case ONE5STOPBITS : break;
+		case TWOSTOPBITS : s->c_cflag |= CSTOPB; break;
+	}
 
 	s->c_iflag = 0;
 	s->c_lflag = 0;
@@ -276,22 +372,32 @@ tcgetattr(
 
 
 extern int tcflush(int fd, int mode) {
-
-
-
-
-return 0;
-
+	int Result = 0;
+	HANDLE h = (HANDLE) _get_osfhandle(fd);
+	switch ( mode ) {
+	case TCIFLUSH:
+		Result = PurgeComm(h, PURGE_RXCLEAR);
+		break;
+	case TCOFLUSH:
+		Result = PurgeComm(h, PURGE_TXABORT);
+		break;
+	case TCIOFLUSH:
+		Result = PurgeComm(h, PURGE_RXCLEAR | PURGE_TXABORT);
+		break;
+	}
+	if ( Result == 0 ) return -1;	/* failed */
+	else return 0;					/* successful */
 }
 
+
 extern int cfsetispeed(struct termios *tio, int speed) {
-		
+
 return 0;		
 };	
 
 
 extern int cfsetospeed(struct termios *tio, int speed) {
-		
+
 return 0;		
 };	
 

#### ChangeSet ####
2009-03-18 11:44:59+00:00, davehart at shiny.ad.hartbrothers.com 
  [Bug 1014] Enable building with VC9 (in Visual Studio 2008, Visual C++ 2008, or SDK)

==== ChangeLog ====
2009-03-18 11:44:52+00:00, davehart at shiny.ad.hartbrothers.com +2 -0
  [Bug 1014] Enable building with VC9 (in Visual Studio 2008, Visual C++ 2008, or SDK)

--- 1.50/ChangeLog	2009-01-08 06:21:25 -05:00
+++ 1.50.3.1/ChangeLog	2009-03-18 06:44:52 -05:00
@@ -1,3 +1,5 @@
+* [Bug 1014] Enable building with VC9 (in Visual Studio 2008, Visual C++ 2008, or SDK)
+
 ---
 (4.2.4p6) 2009/01/08 Released by Harlan Stenn <stenn at ntp.org>
 

#### ChangeSet ####
2009-03-18 10:14:52+00:00, davehart at shiny.ad.hartbrothers.com 
  [Bug 1117] Deferred interface binding under Windows works only correctly if FORCE_DNSRETRY is defined

==== ChangeLog ====
2009-03-18 10:12:28+00:00, davehart at shiny.ad.hartbrothers.com +2 -0
  [Bug 1117] Deferred interface binding under Windows works only correctly if FORCE_DNSRETRY is defined

--- 1.50.1.2/ChangeLog	2009-02-07 16:12:26 -05:00
+++ 1.50.1.3/ChangeLog	2009-03-18 05:12:28 -05:00
@@ -1,3 +1,5 @@
+* [Bug 1117] Deferred interface binding under Windows works only correctly
+  if FORCE_DNSRETRY is defined
 * [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU
 
 ---

#### ChangeSet ####
2009-03-17 18:39:09+00:00, davehart at shiny.ad.hartbrothers.com 
  add .sln and .vcproj files for VC9

==== ports/winnt/instsrv/Instsrv.vcproj ====
2009-03-17 18:34:21+00:00, davehart at shiny.ad.hartbrothers.com +253 -0
  VC9 equivalent to Instsrv.dsp

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/instsrv/Instsrv.vcproj	2009-03-17 13:34:21 -05:00
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="instsrv"
+	ProjectGUID="{C3534C4D-6DF1-498E-9904-4337878A1515}"
+	TargetFrameworkVersion="0"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\Debug"
+			IntermediateDirectory=".\Debug"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Debug/Instsrv.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				WholeProgramOptimization="true"
+				AdditionalIncludeDirectories="..\..\..\include,..\include,."
+				PreprocessorDefinitions="_DEBUG;_CONSOLE;WIN32;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				MinimalRebuild="false"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="1"
+				PrecompiledHeaderFile=".\Debug/Instsrv.pch"
+				AssemblerListingLocation=".\Debug/"
+				ObjectFile=".\Debug/"
+				ProgramDataBaseFileName="..\bin\Debug\instsrv-vc90"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="oldnames.lib"
+				OutputFile="../bin/Debug/Instsrv.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Debug\Instsrv.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Debug/Instsrv.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory=".\Release"
+			IntermediateDirectory=".\Release"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Release/Instsrv.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				InlineFunctionExpansion="1"
+				AdditionalIncludeDirectories="..\..\..\include,..\include,."
+				PreprocessorDefinitions="NDEBUG;_CONSOLE;WIN32;_WINDOWS;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				StringPooling="true"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="true"
+				PrecompiledHeaderFile=".\Release/Instsrv.pch"
+				AssemblerListingLocation=".\Release/"
+				ObjectFile=".\Release/"
+				ProgramDataBaseFileName="..\bin\Release\instsrv-vc90"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="oldnames.lib"
+				OutputFile="../bin/Release/Instsrv.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Release\Instsrv.pdb"
+				SubSystem="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Release/Instsrv.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+			>
+			<File
+				RelativePath="instsrv.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl"
+			>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+			>
+		</Filter>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

==== ports/winnt/instsrv/Instsrv.vcproj ====
2009-03-17 18:34:21+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

==== ports/winnt/libntp/libntp.vcproj ====
2009-03-17 18:35:45+00:00, davehart at shiny.ad.hartbrothers.com +2229 -0
  VC9 equivalent to libntp.dsp

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/libntp/libntp.vcproj	2009-03-17 13:35:45 -05:00
@@ -0,0 +1,2229 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="libntp"
+	ProjectGUID="{400FBFCB-462E-40D0-B06B-3B74E3FFFD00}"
+	TargetFrameworkVersion="0"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\Debug"
+			IntermediateDirectory=".\Debug"
+			ConfigurationType="4"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				WholeProgramOptimization="false"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,..\..\..\libopts"
+				PreprocessorDefinitions="_DEBUG;_LIB;WIN32;SYS_WINNT;HAVE_CONFIG_H;_USE_32BIT_TIME_T;"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="1"
+				PrecompiledHeaderFile=".\Debug/libntp.pch"
+				AssemblerListingLocation=".\Debug/"
+				ObjectFile=".\Debug/"
+				ProgramDataBaseFileName=".\Debug/"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLibrarianTool"
+				OutputFile=".\Debug\libntp.lib"
+				SuppressStartupBanner="true"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Debug/libntp.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory=".\Release"
+			IntermediateDirectory=".\Release"
+			ConfigurationType="4"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				InlineFunctionExpansion="1"
+				WholeProgramOptimization="false"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,..\..\..\libopts"
+				PreprocessorDefinitions="NDEBUG;_LIB;WIN32;SYS_WINNT;HAVE_CONFIG_H;_USE_32BIT_TIME_T;"
+				GeneratePreprocessedFile="0"
+				StringPooling="true"
+				ExceptionHandling="0"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="false"
+				PrecompiledHeaderFile=".\Release/libntp.pch"
+				AssemblerListingLocation=".\Release/"
+				ObjectFile=".\Release/"
+				ProgramDataBaseFileName=".\Release\"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLibrarianTool"
+				OutputFile=".\Release\libntp.lib"
+				SuppressStartupBanner="true"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Release/libntp.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+			>
+			<File
+				RelativePath="..\..\..\libntp\a_md5encrypt.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\adjtime.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\assertions.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\atoint.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\atolfp.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\atouint.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\authkeys.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\authreadkeys.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\authusekey.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\buftvtots.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\caljulian.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\caltontp.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\calyearstart.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\clocktime.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\clocktypes.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\decodenetnum.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="dnslookup.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\dofptoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\dolfptoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\emalloc.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\error.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\findconfig.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\fptoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\fptoms.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\getopt.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\hextoint.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\hextolfp.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\humandate.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\inet_aton.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\inet_ntop.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\inet_pton.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libisc\interfaceiter.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\inttoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\iosignal.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libisc\isc_strerror.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\lib.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\lib_strbuf.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libopts\libopts.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="0"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="0"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\machines.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\md5c.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\mem.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\memmove.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\mfptoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\mfptoms.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\mktime.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\modetoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\msgcat.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\mstolfp.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\msutotsf.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\msyslog.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libisc\net.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\netaddr.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\netof.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\netscope.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\ntp_random.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\ntp_rfc2553.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\numtoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\numtohost.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\octtoint.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libisc\once.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\prettydate.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="randfile.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\recvbuff.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\refnumtoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="SetSystemTime.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libisc\sockaddr.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\socktoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\socktohost.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\statestr.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="syslog.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\syssignal.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\systime.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="transmitbuff.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\tsftomsu.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\tstotv.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\tvtoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\tvtots.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\uglydate.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\uinttoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\utvtoa.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libisc\win32os.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\ymd2yd.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl"
+			>
+			<File
+				RelativePath="..\..\..\include\binio.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\clockstuff.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\config.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\global.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ieee754io.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\netinet\in.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\arpa\inet.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\interfaceiter.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\sys\ioctl.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\iosignal.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\ipv6.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\l_stdlib.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\lib_strbuf.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\md5.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\net.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\netaddr.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\netdb.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\netscope.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_calendar.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_control.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_fp.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_if.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_io.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\ntp_iocompletionport.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_machine.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_malloc.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_proto.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_random.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_refclock.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_rfc2553.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_select.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_stdlib.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_string.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_syslog.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\ntp_timer.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_types.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_unixtime.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntpd.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\recvbuff.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\sys\signal.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\sys\socket.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\syslog.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\termios.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\sys\time.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\transmitbuff.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\win32_io.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\win32os.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Generated Files"
+			>
+			<File
+				RelativePath="messages.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			>
+			<File
+				RelativePath="messages.mc"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Message Compiler"
+						CommandLine="mc -h $(InputDir) -r $(InputDir) -e h $(InputPath)&#x0D;&#x0A;"
+						Outputs="$(InputDir)$(InputName).rc;$(InputDir)$(InputName).h;$(InputDir)msg00001.bin"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Message Compiler"
+						CommandLine="mc -h $(InputDir) -r $(InputDir) -e h $(InputPath)&#x0D;&#x0A;"
+						Outputs="$(InputDir)$(InputName).rc;$(InputDir)$(InputName).h;$(InputDir)msg00001.bin"
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

==== ports/winnt/libntp/libntp.vcproj ====
2009-03-17 18:35:45+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

==== ports/winnt/ntp-keygen/ntpkeygen.vcproj ====
2009-03-17 18:36:28+00:00, davehart at shiny.ad.hartbrothers.com +419 -0
  VC9 equivalent to ntpkeygen.dsp

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/ntp-keygen/ntpkeygen.vcproj	2009-03-17 13:36:28 -05:00
@@ -0,0 +1,419 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="ntp-keygen"
+	ProjectGUID="{C88C1FBF-59D2-447F-BF57-0BCA8889028F}"
+	RootNamespace="ntp-keygen"
+	TargetFrameworkVersion="0"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\Debug"
+			IntermediateDirectory=".\Debug"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Debug/ntpkeygen.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				WholeProgramOptimization="true"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32,..\..\..\libopts"
+				PreprocessorDefinitions="_DEBUG;_CONSOLE;WIN32;__STDC__;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				MinimalRebuild="true"
+				ExceptionHandling="0"
+				BasicRuntimeChecks="3"
+				SmallerTypeCheck="true"
+				RuntimeLibrary="1"
+				PrecompiledHeaderFile=".\Debug/ntpkeygen.pch"
+				AssemblerListingLocation=".\Debug/"
+				ObjectFile=".\Debug/"
+				ProgramDataBaseFileName="..\bin\Debug\ntp-keygen-vc90"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib $(OPENSSL)\lib\vc\libeay32MDd.lib"
+				OutputFile="../bin/Debug/ntp-keygen.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Debug\ntp-keygen.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Debug/ntpkeygen.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory=".\Release"
+			IntermediateDirectory=".\Release"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Release/ntpkeygen.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				InlineFunctionExpansion="1"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32,..\..\..\libopts"
+				PreprocessorDefinitions="NDEBUG;_CONSOLE;WIN32;__STDC__;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				StringPooling="true"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="true"
+				PrecompiledHeaderFile=".\Release/ntpkeygen.pch"
+				AssemblerListingLocation=".\Release/"
+				ObjectFile=".\Release/"
+				ProgramDataBaseFileName="..\bin\Release\ntp-keygen-vc90"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib $(OPENSSL)\lib\vc\libeay32MD.lib ..\libntp\Release\libntp.lib"
+				OutputFile="../bin/Release/ntp-keygen.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Release\ntp-keygen.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="0"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Release/ntpkeygen.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+			>
+			<File
+				RelativePath="..\..\..\libntp\getopt.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\util\ntp-keygen-opts.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\util\ntp-keygen.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\ntp_random.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libntp\randfile.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libntp\util_clockstuff.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="version.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl"
+			>
+			<File
+				RelativePath="..\include\config.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+			>
+		</Filter>
+		<File
+			RelativePath="..\..\..\configure"
+			>
+			<FileConfiguration
+				Name="Debug|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpkeygen&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+			<FileConfiguration
+				Name="Release|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpkeygen&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

==== ports/winnt/ntp-keygen/ntpkeygen.vcproj ====
2009-03-17 18:36:28+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

==== ports/winnt/ntp.sln ====
2009-03-17 18:38:44+00:00, davehart at shiny.ad.hartbrothers.com +71 -0
  VC9 equivalent to ntp.dsw

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/ntp.sln	2009-03-17 13:38:44 -05:00
@@ -0,0 +1,71 @@
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual C++ Express 2008
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "instsrv", "instsrv\Instsrv.vcproj", "{C3534C4D-6DF1-498E-9904-4337878A1515}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libntp", "libntp\libntp.vcproj", "{400FBFCB-462E-40D0-B06B-3B74E3FFFD00}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ntpd", "ntpd\ntpd.vcproj", "{CB61F8BF-9637-495C-9087-E8664B400CE0}"
+	ProjectSection(ProjectDependencies) = postProject
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00} = {400FBFCB-462E-40D0-B06B-3B74E3FFFD00}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ntpdate", "ntpdate\ntpdate.vcproj", "{2789A62E-3F46-44F1-AAF0-816CD23C2911}"
+	ProjectSection(ProjectDependencies) = postProject
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00} = {400FBFCB-462E-40D0-B06B-3B74E3FFFD00}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ntpdc", "ntpdc\ntpdc.vcproj", "{8011C820-B3D5-4034-86EA-FFC30AE6764B}"
+	ProjectSection(ProjectDependencies) = postProject
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00} = {400FBFCB-462E-40D0-B06B-3B74E3FFFD00}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ntpkeygen", "ntp-keygen\ntpkeygen.vcproj", "{C88C1FBF-59D2-447F-BF57-0BCA8889028F}"
+	ProjectSection(ProjectDependencies) = postProject
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00} = {400FBFCB-462E-40D0-B06B-3B74E3FFFD00}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ntpq", "ntpq\ntpq.vcproj", "{6A92BF14-8931-48B1-A571-DEBE9F190616}"
+	ProjectSection(ProjectDependencies) = postProject
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00} = {400FBFCB-462E-40D0-B06B-3B74E3FFFD00}
+	EndProjectSection
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Win32 = Debug|Win32
+		Release|Win32 = Release|Win32
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{C3534C4D-6DF1-498E-9904-4337878A1515}.Debug|Win32.ActiveCfg = Debug|Win32
+		{C3534C4D-6DF1-498E-9904-4337878A1515}.Debug|Win32.Build.0 = Debug|Win32
+		{C3534C4D-6DF1-498E-9904-4337878A1515}.Release|Win32.ActiveCfg = Release|Win32
+		{C3534C4D-6DF1-498E-9904-4337878A1515}.Release|Win32.Build.0 = Release|Win32
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00}.Debug|Win32.ActiveCfg = Debug|Win32
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00}.Debug|Win32.Build.0 = Debug|Win32
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00}.Release|Win32.ActiveCfg = Release|Win32
+		{400FBFCB-462E-40D0-B06B-3B74E3FFFD00}.Release|Win32.Build.0 = Release|Win32
+		{CB61F8BF-9637-495C-9087-E8664B400CE0}.Debug|Win32.ActiveCfg = Debug|Win32
+		{CB61F8BF-9637-495C-9087-E8664B400CE0}.Debug|Win32.Build.0 = Debug|Win32
+		{CB61F8BF-9637-495C-9087-E8664B400CE0}.Release|Win32.ActiveCfg = Release|Win32
+		{CB61F8BF-9637-495C-9087-E8664B400CE0}.Release|Win32.Build.0 = Release|Win32
+		{2789A62E-3F46-44F1-AAF0-816CD23C2911}.Debug|Win32.ActiveCfg = Debug|Win32
+		{2789A62E-3F46-44F1-AAF0-816CD23C2911}.Debug|Win32.Build.0 = Debug|Win32
+		{2789A62E-3F46-44F1-AAF0-816CD23C2911}.Release|Win32.ActiveCfg = Release|Win32
+		{2789A62E-3F46-44F1-AAF0-816CD23C2911}.Release|Win32.Build.0 = Release|Win32
+		{8011C820-B3D5-4034-86EA-FFC30AE6764B}.Debug|Win32.ActiveCfg = Debug|Win32
+		{8011C820-B3D5-4034-86EA-FFC30AE6764B}.Debug|Win32.Build.0 = Debug|Win32
+		{8011C820-B3D5-4034-86EA-FFC30AE6764B}.Release|Win32.ActiveCfg = Release|Win32
+		{8011C820-B3D5-4034-86EA-FFC30AE6764B}.Release|Win32.Build.0 = Release|Win32
+		{C88C1FBF-59D2-447F-BF57-0BCA8889028F}.Debug|Win32.ActiveCfg = Debug|Win32
+		{C88C1FBF-59D2-447F-BF57-0BCA8889028F}.Debug|Win32.Build.0 = Debug|Win32
+		{C88C1FBF-59D2-447F-BF57-0BCA8889028F}.Release|Win32.ActiveCfg = Release|Win32
+		{C88C1FBF-59D2-447F-BF57-0BCA8889028F}.Release|Win32.Build.0 = Release|Win32
+		{6A92BF14-8931-48B1-A571-DEBE9F190616}.Debug|Win32.ActiveCfg = Debug|Win32
+		{6A92BF14-8931-48B1-A571-DEBE9F190616}.Debug|Win32.Build.0 = Debug|Win32
+		{6A92BF14-8931-48B1-A571-DEBE9F190616}.Release|Win32.ActiveCfg = Release|Win32
+		{6A92BF14-8931-48B1-A571-DEBE9F190616}.Release|Win32.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+EndGlobal

==== ports/winnt/ntp.sln ====
2009-03-17 18:38:44+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

==== ports/winnt/ntpd/ntpd.vcproj ====
2009-03-17 18:36:49+00:00, davehart at shiny.ad.hartbrothers.com +2198 -0
  VC9 equivalent to ntpd.dsp

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/ntpd/ntpd.vcproj	2009-03-17 13:36:49 -05:00
@@ -0,0 +1,2198 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="ntpd"
+	ProjectGUID="{CB61F8BF-9637-495C-9087-E8664B400CE0}"
+	TargetFrameworkVersion="0"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory=".\Release"
+			IntermediateDirectory=".\Release"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Release/ntpd.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				InlineFunctionExpansion="2"
+				EnableIntrinsicFunctions="true"
+				FavorSizeOrSpeed="1"
+				WholeProgramOptimization="true"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\inc32,$(OPENSSL)\include,..\..\..\libopts"
+				PreprocessorDefinitions="NDEBUG;_CONSOLE;WIN32;SYS_WINNT;HAVE_CONFIG_H;_USE_32BIT_TIME_T"
+				StringPooling="true"
+				ExceptionHandling="0"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="false"
+				PrecompiledHeaderFile=".\Release/ntpd.pch"
+				AssemblerListingLocation=".\Release/"
+				ObjectFile=".\Release/"
+				ProgramDataBaseFileName="..\bin\Release\ntpd-vc90"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib winmm.lib $(OPENSSL)\lib\libeay32.lib"
+				OutputFile="../bin/Release/ntpd.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Release\ntpd.pdb"
+				SubSystem="1"
+				OptimizeForWindows98="0"
+				LinkTimeCodeGeneration="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="2"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Release/ntpd.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\Debug"
+			IntermediateDirectory=".\Debug"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Debug/ntpd.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				InlineFunctionExpansion="2"
+				EnableIntrinsicFunctions="true"
+				FavorSizeOrSpeed="1"
+				WholeProgramOptimization="false"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32,..\..\..\libopts"
+				PreprocessorDefinitions="_DEBUG;_CONSOLE;WIN32;SYS_WINNT;HAVE_CONFIG_H;_USE_32BIT_TIME_T"
+				MinimalRebuild="true"
+				ExceptionHandling="0"
+				BasicRuntimeChecks="3"
+				SmallerTypeCheck="true"
+				RuntimeLibrary="1"
+				EnableFunctionLevelLinking="true"
+				PrecompiledHeaderFile=".\Debug/ntpd.pch"
+				AssemblerListingLocation=".\Debug/"
+				ObjectFile=".\Debug/"
+				ProgramDataBaseFileName="..\bin\Debug\ntpd-vc90"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib winmm.lib $(OPENSSL)\lib\libeay32.lib"
+				OutputFile="../bin/Debug/ntpd.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Debug\ntpd.pdb"
+				SubSystem="1"
+				OptimizeForWindows98="0"
+				LinkTimeCodeGeneration="0"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Debug/ntpd.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+			>
+			<File
+				RelativePath="..\..\..\ntpd\cmd_args.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="nt_clockstuff.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_config.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_control.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_crypto.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_filegen.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_intres.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_io.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="ntp_iocompletionport.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_loopfilter.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_monitor.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_peer.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_proto.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_refclock.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_request.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_restrict.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_timer.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntp_util.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntpd-opts.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntpd.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="ntservice.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="win32_io.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl"
+			>
+			<File
+				RelativePath="..\..\..\include\ascii.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\assertions.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\binio.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\boolean.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\clockstuff.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\config.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\hopf_PCI_io.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ieee754io.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\netinet\in.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\arpa\inet.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\int.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\interfaceiter.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\iosignal.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\ipv6.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\jupiter.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\l_stdlib.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\libntp\log.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\mbg_gps166.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\net.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\netaddr.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\netdb.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_calendar.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_cmdargs.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_config.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_control.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_debug.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_filegen.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_fp.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_if.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_io.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\ntp_iocompletionport.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_machine.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_malloc.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_proto.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_random.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_refclock.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_request.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_rfc2553.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_select.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_stdlib.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_string.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_syslog.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\ntp_timer.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_tty.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_types.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntp_unixtime.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\ntpd-opts.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\ntpd.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\ntservice.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\offset.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\libopts\autoopts\options.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\sys\param.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\platform.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\recvbuff.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\include\isc\result.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\sys\socket.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\syslog.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\termios.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\timepps.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\transmitbuff.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\sys\wait.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\win32_io.h"
+				>
+			</File>
+			<File
+				RelativePath="..\include\isc\win32os.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Generated Files"
+			>
+			<File
+				RelativePath="..\libntp\messages.rc"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCResourceCompilerTool"
+						PreprocessorDefinitions=""
+						AdditionalIncludeDirectories="..\libntp"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCResourceCompilerTool"
+						PreprocessorDefinitions=""
+						AdditionalIncludeDirectories="..\libntp"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libntp\MSG00001.bin"
+				>
+			</File>
+			<File
+				RelativePath="version.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						ShowIncludes="true"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+			>
+			<File
+				RelativePath="..\libntp\messages.mc"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Reference Clock"
+			>
+			<File
+				RelativePath="hopf_PCI_io.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_acts.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_arbiter.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_arc.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_as2201.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_atom.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_bancomm.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_chu.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_conf.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_datum.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_dumbclock.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_gpsvme.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_heath.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_hopfpci.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_hopfser.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_hpgps.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_irig.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_jupiter.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_leitch.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_local.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_msfees.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_mx4200.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_nmea.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_oncore.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_palisade.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_palisade.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_parse.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_pcf.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_pst.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_ptbacts.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_shm.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_tpro.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_trak.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_true.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_usno.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpd\refclock_wwvb.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Parse Lib"
+			>
+			<File
+				RelativePath="..\..\..\libparse\clk_computime.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_dcf7000.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_hopf6021.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_meinberg.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_rawdcf.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_rcc8000.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_schmid.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_trimtaip.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\clk_trimtsip.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\data_mbg.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\parse.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\libparse\parse_conf.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					ExcludedFromBuild="true"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<File
+			RelativePath="..\..\..\configure"
+			>
+			<FileConfiguration
+				Name="Release|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpd&#x0D;&#x0A;"
+					AdditionalDependencies="..\scripts\mkver.bat;..\include\config.h;ntp_iocompletionport.c;win32_io.c;ntpd.c;ntp_timer.c;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+			<FileConfiguration
+				Name="Debug|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpd&#x0D;&#x0A;"
+					AdditionalDependencies="..\scripts\mkver.bat;..\include\config.h;ntp_iocompletionport.c;win32_io.c;ntpd.c;ntp_timer.c;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+		</File>
+		<File
+			RelativePath="..\scripts\mkver.bat"
+			>
+			<FileConfiguration
+				Name="Release|Win32"
+				ExcludedFromBuild="true"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+				/>
+			</FileConfiguration>
+			<FileConfiguration
+				Name="Debug|Win32"
+				ExcludedFromBuild="true"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+				/>
+			</FileConfiguration>
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

==== ports/winnt/ntpd/ntpd.vcproj ====
2009-03-17 18:36:49+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

==== ports/winnt/ntpdate/ntpdate.vcproj ====
2009-03-17 18:37:19+00:00, davehart at shiny.ad.hartbrothers.com +327 -0
  VC9 equivalent to ntpdate.dsp

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/ntpdate/ntpdate.vcproj	2009-03-17 13:37:19 -05:00
@@ -0,0 +1,327 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="ntpdate"
+	ProjectGUID="{2789A62E-3F46-44F1-AAF0-816CD23C2911}"
+	TargetFrameworkVersion="0"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\Debug"
+			IntermediateDirectory=".\Debug"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Debug/ntpdate.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				WholeProgramOptimization="false"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32"
+				PreprocessorDefinitions="_DEBUG;_CONSOLE;WIN32;__STDC__;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="1"
+				PrecompiledHeaderFile=".\Debug/ntpdate.pch"
+				AssemblerListingLocation=".\Debug/"
+				ObjectFile=".\Debug/"
+				ProgramDataBaseFileName="..\bin\Debug\ntpdate-vc90"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib"
+				OutputFile="../bin/Debug/ntpdate.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Debug\ntpdate.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="0"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Debug/ntpdate.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory=".\Release"
+			IntermediateDirectory=".\Release"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Release/ntpdate.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				InlineFunctionExpansion="1"
+				WholeProgramOptimization="true"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32"
+				PreprocessorDefinitions="NDEBUG;_CONSOLE;WIN32;__STDC__;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				StringPooling="true"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="true"
+				PrecompiledHeaderFile=".\Release/ntpdate.pch"
+				AssemblerListingLocation=".\Release/"
+				ObjectFile=".\Release/"
+				ProgramDataBaseFileName="..\bin\Release\ntpdate-vc90"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib"
+				OutputFile="../bin/Release/ntpdate.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Release\ntpdate.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Release/ntpdate.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+			>
+			<File
+				RelativePath="..\..\..\ntpdate\ntpdate.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libntp\util_clockstuff.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="version.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl"
+			>
+			<File
+				RelativePath="..\..\..\ntpdate\ntpdate.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+			>
+		</Filter>
+		<File
+			RelativePath="..\..\..\configure"
+			>
+			<FileConfiguration
+				Name="Debug|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpdate&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+			<FileConfiguration
+				Name="Release|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpdate&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

==== ports/winnt/ntpdate/ntpdate.vcproj ====
2009-03-17 18:37:19+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

==== ports/winnt/ntpdc/ntpdc.vcproj ====
2009-03-17 18:37:32+00:00, davehart at shiny.ad.hartbrothers.com +376 -0
  VC9 equivalent to ntpdc.dsp

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/ntpdc/ntpdc.vcproj	2009-03-17 13:37:32 -05:00
@@ -0,0 +1,376 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="ntpdc"
+	ProjectGUID="{8011C820-B3D5-4034-86EA-FFC30AE6764B}"
+	TargetFrameworkVersion="0"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\Debug"
+			IntermediateDirectory=".\Debug"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Debug/ntpdc.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				WholeProgramOptimization="true"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32,..\..\..\libopts"
+				PreprocessorDefinitions="_DEBUG;_CONSOLE;WIN32;__STDC__;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="1"
+				PrecompiledHeaderFile=".\Debug/ntpdc.pch"
+				AssemblerListingLocation=".\Debug/"
+				ObjectFile=".\Debug/"
+				ProgramDataBaseFileName="..\bin\Debug\ntpdc-vc90"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib"
+				OutputFile="../bin/Debug/ntpdc.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Debug\ntpdc.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Debug/ntpdc.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory=".\Release"
+			IntermediateDirectory=".\Release"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Release/ntpdc.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				InlineFunctionExpansion="1"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32,..\..\..\libopts"
+				PreprocessorDefinitions="NDEBUG;_CONSOLE;WIN32;__STDC__;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				StringPooling="true"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="true"
+				PrecompiledHeaderFile=".\Release/ntpdc.pch"
+				AssemblerListingLocation=".\Release/"
+				ObjectFile=".\Release/"
+				ProgramDataBaseFileName="..\bin\Release\ntpdc-vc90"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib"
+				OutputFile="../bin/Release/ntpdc.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Release\ntpdc.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="0"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Release/ntpdc.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+			>
+			<File
+				RelativePath="..\..\..\ntpdc\ntpdc-opts.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpdc\ntpdc.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpdc\ntpdc_ops.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+						WarningLevel="3"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libntp\util_clockstuff.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="version.c"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl"
+			>
+			<File
+				RelativePath="..\..\..\ntpdc\ntpdc.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+			>
+		</Filter>
+		<File
+			RelativePath="..\..\..\configure"
+			>
+			<FileConfiguration
+				Name="Debug|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpdc&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+			<FileConfiguration
+				Name="Release|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpdc&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

==== ports/winnt/ntpdc/ntpdc.vcproj ====
2009-03-17 18:37:31+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

==== ports/winnt/ntpq/ntpq.vcproj ====
2009-03-17 18:37:48+00:00, davehart at shiny.ad.hartbrothers.com +370 -0
  VC9 equivalent to ntpq.dsp

--- /dev/null	2009-03-30 01:32:49 -05:00
+++ 1.1/ports/winnt/ntpq/ntpq.vcproj	2009-03-17 13:37:48 -05:00
@@ -0,0 +1,370 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="ntpq"
+	ProjectGUID="{6A92BF14-8931-48B1-A571-DEBE9F190616}"
+	TargetFrameworkVersion="0"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory=".\Release"
+			IntermediateDirectory=".\Release"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Release/ntpq.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				InlineFunctionExpansion="1"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,$(OPENSSL)\include,$(OPENSSL)\inc32,..\..\..\libopts"
+				PreprocessorDefinitions="NDEBUG;_CONSOLE;WIN32;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				StringPooling="true"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="true"
+				PrecompiledHeaderFile=".\Release/ntpq.pch"
+				AssemblerListingLocation=".\Release/"
+				ObjectFile=".\Release/"
+				ProgramDataBaseFileName="..\bin\Release\ntpq-vc90"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib"
+				OutputFile="../bin/Release/ntpq.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Release\ntpq.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="0"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Release/ntpq.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\Debug"
+			IntermediateDirectory=".\Debug"
+			ConfigurationType="1"
+			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="false"
+			CharacterSet="2"
+			DeleteExtensionsOnClean="version.c,*.obj;*.ilk;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;$(TargetPath)"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\Debug/ntpq.tlb"
+				HeaderFileName=""
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				WholeProgramOptimization="true"
+				AdditionalIncludeDirectories=".,..\include,..\..\..\include,,$(OPENSSL)\include,$(OPENSSL)\inc32,..\..\..\libopts"
+				PreprocessorDefinitions="_DEBUG;_CONSOLE;WIN32;;SYS_WINNT;HAVE_CONFIG_H;_CRT_SECURE_NO_WARNINGS"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="1"
+				PrecompiledHeaderFile=".\Debug/ntpq.pch"
+				AssemblerListingLocation=".\Debug/"
+				ObjectFile=".\Debug/"
+				ProgramDataBaseFileName="..\bin\Debug\ntpq-vc90"
+				BrowseInformation="1"
+				WarningLevel="4"
+				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
+				CompileAs="1"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib"
+				OutputFile="../bin/Debug/ntpq.exe"
+				Version="0x0400"
+				LinkIncremental="1"
+				SuppressStartupBanner="true"
+				GenerateManifest="false"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="..\bin\Debug\ntpq.pdb"
+				SubSystem="1"
+				LinkTimeCodeGeneration="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+				SuppressStartupBanner="true"
+				OutputFile=".\Debug/ntpq.bsc"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+			>
+			<File
+				RelativePath="..\..\..\ntpq\ntpq-opts.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpq\ntpq-subs.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\..\..\ntpq\ntpq.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\libntp\util_clockstuff.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="version.c"
+				>
+				<FileConfiguration
+					Name="Release|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						AdditionalIncludeDirectories=""
+						PreprocessorDefinitions=""
+					/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl"
+			>
+			<File
+				RelativePath="..\..\..\ntpq\ntpq.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+			>
+		</Filter>
+		<File
+			RelativePath="..\..\..\configure"
+			>
+			<FileConfiguration
+				Name="Release|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpq&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+			<FileConfiguration
+				Name="Debug|Win32"
+				>
+				<Tool
+					Name="VCCustomBuildTool"
+					CommandLine="echo Using NT Shell Script to generate version.c&#x0D;&#x0A;..\scripts\mkver.bat -P ntpq&#x0D;&#x0A;"
+					Outputs="$(ProjectDir)version.c"
+				/>
+			</FileConfiguration>
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

==== ports/winnt/ntpq/ntpq.vcproj ====
2009-03-17 18:37:48+00:00, davehart at shiny.ad.hartbrothers.com +0 -0

#### ChangeSet ####
2009-03-17 18:18:13+00:00, hart at pogo.udel.edu 
  config.h:
    now works with VC6 and VC9 compilers, declares DWORD_PTR on VC6

==== ports/winnt/include/config.h ====
2009-03-17 18:18:01+00:00, hart at pogo.udel.edu +243 -96
  now works with VC6 and VC9 compilers, declares DWORD_PTR on VC6

--- 1.47/ports/winnt/include/config.h	2008-02-20 06:13:24 -05:00
+++ 1.48/ports/winnt/include/config.h	2009-03-17 13:18:01 -05:00
@@ -4,25 +4,100 @@
 #define __CONFIG_H
 
 /*
+ * we want newer prototypes from Windows so we target _WIN32_WINNT 
+ * at WINXP, but we also want our binary to run on NT 4, so newer
+ * functions are runtime linked and the linker /version:0x0400 
+ * switch is used to override the .exe file minimum version.
+ *
+ * NOTE VC6 .dsw/.dsp files need to add /version:0x0400 to the link
+ * command lines, I've done it for VC9.  Then remove these two lines.
+ */
+#ifndef _WIN32_WINNT
+#define _WIN32_WINNT 0x0501
+#endif
+
+#define _CRT_SECURE_NO_DEPRECATE 1
+/*
+ * ANSI C compliance enabled
+ */
+#define __STDC__ 1
+
+/*
+ * We need to include string.h first before we override strerror
+ * otherwise we can get errors during the build
+ */
+#include <string.h>
+
+/*
+ * We need to include stdio.h first before we #define snprintf
+ * otherwise we can get errors during the build
+ */
+#include <stdio.h>
+
+/* Prevent inclusion of winsock.h in windows.h */
+#ifndef _WINSOCKAPI_
+#define _WINSOCKAPI_  
+#endif
+
+#ifndef __RPCASYNC_H__
+#define __RPCASYNC_H__
+#endif
+
+/*
+ * VS.NET's version of wspiapi.h has a bug in it
+ * where it assigns a value to a variable inside
+ * an if statement. It should be comparing them.
+ * We prevent inclusion since we are not using this
+ * code so we don't have to see the warning messages
+ */
+#ifndef _WSPIAPI_H_
+//#define _WSPIAPI_H_ // need these wrappers for ntpd.exe to load on w2k
+#endif
+
+/* Include Windows headers */
+#include <windows.h>
+#include <ws2tcpip.h>
+
+/*
+ * Some definitions we are using are missing in the headers
+ * shipping with VC6. However, if the SDK is installed then the 
+ * SDK's headers may declare the missing types. This is at least 
+ * the case in the Oct 2001 SDK. That SDK and all subsequent 
+ * versions also define the symbol _W64, so we can use that one
+ * to determine whether some types need to be defined, or not.
+ */
+#ifdef _W64
+/* VC6 can include wspiapi.h only if the SDK is installed */
+#include <wspiapi.h>
+#endif
+
+//#include <runtimelink.h>	/* must come after ws2tcpip.h */
+#undef interface
+#include <process.h>
+
+/* ---------------------------------------------------------------------
+ * Above this line are #include lines and the few #define lines
+ * needed before including headers.
+ */
+
+/*
  * IPv6 requirements
  */
 /*
- * For VS.NET most of the IPv6 types and structures are defined
+ * For VS.NET most of the IPv6 types and structures are defined.
+ * This should depend on the contrents of the available headers, 
+ * not on the compiler version.
  */
-#if _MSC_VER > 1200
+#if defined _MSC_VER && _MSC_VER > 1200
 #define HAVE_STRUCT_SOCKADDR_STORAGE
 #define ISC_PLATFORM_HAVEIPV6
 #define ISC_PLATFORM_HAVEIN6PKTINFO
 #define NO_OPTION_NAME_WARNINGS
-#else
-typedef int socklen_t;	/* VS 6.0 doesn't know about socklen_t */
 #endif
 
-/*
- * Some types don't exist in VS V6
- */
-#if _MSC_VER < 1300
-typedef unsigned int	uintptr_t;
+#ifndef _W64
+/* VC6 doesn't know about socklen_t, except if the SDK is installed */
+typedef int socklen_t;
 #endif
 
 #define ISC_PLATFORM_NEEDIN6ADDRANY
@@ -33,6 +108,18 @@ typedef unsigned int	uintptr_t;
  * is int for VS compilers on Windows but the type is already declared 
  */
 #define GETSOCKNAME_SOCKLEN_TYPE socklen_t
+
+#if defined _MSC_VER && _MSC_VER < 1400
+/*
+ * Use 32-bit time definitions for versions prior to VS 2005
+ * VS 2005 defaults to 64-bit time
+ */
+# define SIZEOF_TIME_T 4
+#else
+# define SIZEOF_TIME_T 8
+#endif
+
+
 /*
  * An attempt to cut down the number of warnings generated during compilation.
  * All of these should be benign to disable.
@@ -41,6 +128,7 @@ typedef unsigned int	uintptr_t;
 #pragma warning(disable: 4100) /* unreferenced formal parameter */
 #pragma warning(disable: 4101) /* unreferenced local variable */
 #pragma warning(disable: 4127) /* conditional expression is constant */
+#pragma warning(disable: 4996) /* more secure replacement available */
 
 /*
  * Windows NT Configuration Values
@@ -48,37 +136,16 @@ typedef unsigned int	uintptr_t;
 #if defined _DEBUG /* Use VC standard macro definitions */
 # define DEBUG 1
 #endif
-#if !defined _WIN32_WINNT || _WIN32_WINNT < 0x0400
-# error Please define _WIN32_WINNT in the project settings/makefile
-#endif
 
 #define __windows__ 1
-/*
- * ANSI C compliance enabled
- */
-#define __STDC__ 1
 /* Define if you have the ANSI C header files.  */
 #define STDC_HEADERS 1
 
-/* Prevent inclusion of winsock.h in windows.h */
-#ifndef _WINSOCKAPI_
-#define _WINSOCKAPI_  
-#endif
-
-#ifndef __RPCASYNC_H__
-#define __RPCASYNC_H__
-#endif
-
-/*
- * VS.NET's version of wspiapi.h has a bug in it
- * where it assigns a value to a variable inside
- * an if statement. It should be comparing them.
- * We prevent inclusion since we are not using this
- * code so we don't have to see the warning messages
+/* 
+ * FORCE_DNSRETRY will allow associations to come up later
+ * if DNS isn't available at first. See bug #1117.
  */
-#ifndef _WSPIAPI_H_
-#define _WSPIAPI_H_
-#endif
+#define FORCE_DNSRETRY 1 
 
 #define OPEN_BCAST_SOCKET	1 /* for	ntp_io.c */
 #define TYPEOF_IP_MULTICAST_LOOP BOOL												
@@ -91,49 +158,51 @@ typedef unsigned int	uintptr_t;
  * Multimedia timer enable
  */
 #define USE_MM_TIMER
-/*
- * Use 32-bit time definitions
- * VS 2005 defaults to 64-bit time
- * Leave commented out for now
- */
-//#define _USE_32BIT_TIME_T
 
 /* Enable OpenSSL */
 #define OPENSSL 1
 
 /*
- * Include standard stat information
- */
-#include <isc/stat.h>
-/*
- * Miscellaneous functions that Microsoft maps
+ * Keywords and functions that Microsoft maps
  * to other names
  */
-#define inline __inline
-#define vsnprintf _vsnprintf
-#define snprintf _snprintf
-#define stricmp _stricmp
-#define strcasecmp _stricmp
-#define isascii __isascii
-#define finite _finite
-#define random      rand
-#define srandom     srand
-#define fdopen	_fdopen
-#define read	_read
-#define open	_open
-#define close	_close
-#define write	_write
-#define strdup  _strdup
-#define stat    _stat       /* struct stat from <sys/stat.h> */
-#define unlink  _unlink
-#define fchmod( _x, _y );
-#define lseek   _lseek
-#define pipe    _pipe
-#define dup2    _dup2
-#define sleep(x) Sleep((DWORD) x * 1000 /* milliseconds */ );
+#define inline		__inline
+#define vsnprintf	_vsnprintf
+#define snprintf	_snprintf
+#define stricmp		_stricmp
+#define strcasecmp	_stricmp
+#define isascii		__isascii
+#define finite		_finite
+#define random		rand
+#define srandom		srand
+#define fdopen		_fdopen
+#define read		_read
+#define open		_open
+#ifndef close
+#define close		_close
+#endif
+#define write		_write
+#define strdup		_strdup
+#define stat		_stat		/*struct stat from  <sys/stat.h> */
+#define unlink		_unlink
+/*
+ * punt on fchmod on Windows
+ */
+#define fchmod(x,y)	{}
+#define lseek		_lseek
+#define pipe		_pipe
+#define dup2		_dup2
+/*
+ * scale, unix sleep is seconds, Windows Sleep is msec
+ */
+#define sleep(x)	Sleep((unsigned)(x) * 1000)
+#define fileno		_fileno
+#define isatty		_isatty
+#define mktemp		_mktemp
+#define getpid		_getpid
 
-#define pid_t	int		/* PID is an int */
-#define ssize_t	int		/* ssize is an int */
+typedef int pid_t;		/* PID is an int */
+typedef int ssize_t;		/* ssize is an int */
 typedef __int32 int32_t;	/* define a typedef for int32_t */
 #define HAVE_INT32_T   1
 
@@ -143,14 +212,8 @@ typedef __int32 int32_t;	/* define a typ
 #define STDOUT_FILENO	_fileno(stdout)
 #define STDERR_FILENO	_fileno(stderr)
 
-/*
- * We need to include string.h first before we override strerror
- * otherwise we can get errors during the build
- */
-#include <string.h>
 /* Point to a local version for error string handling */
 # define strerror	NTstrerror
-
 char *NTstrerror(int errnum);
 
 int NT_set_process_priority(void);	/* Define this function */
@@ -161,8 +224,10 @@ int NT_set_process_priority(void);	/* De
 # define REFCLOCK			/* from ntpd.mak */
 
 # define CLOCK_LOCAL			/* from ntpd.mak */
-//# define CLOCK_PARSE 
+/* # define CLOCK_PARSE  */
 /* # define CLOCK_ATOM */
+/* # define HAVE_TIMEPPS_H */
+/* # define HAVE_PPSAPI */
 /* # define CLOCK_SHM	*/		 /* from ntpd.mak */
 # define CLOCK_HOPF_SERIAL	/* device 38, hopf DCF77/GPS serial line receiver  */
 # define CLOCK_HOPF_PCI		/* device 39, hopf DCF77/GPS PCI-Bus receiver  */
@@ -177,13 +242,11 @@ int NT_set_process_priority(void);	/* De
 # define NTP_POSIX_SOURCE
 
 # define SYSLOG_FILE			/* from libntp.mak */
-# define SYSV_TIMEOFDAY 		/* for ntp_unixtime.h */
+# define SYSV_TIMEOFDAY			/* for ntp_unixtime.h */
 
-# define SIZEOF_SIGNED_CHAR 1
-# define SIZEOF_TIME_T 4
-# define SIZEOF_INT 4			/* for ntp_types.h */
+# define SIZEOF_SIGNED_CHAR	1
+# define SIZEOF_INT		4	/* for ntp_types.h */
 
-//# define HAVE_NET_IF_H
 # define QSORT_USES_VOID_P
 # define HAVE_SETVBUF
 # define HAVE_VSPRINTF
@@ -202,27 +265,111 @@ int NT_set_process_priority(void);	/* De
 # define ISC_PLATFORM_NEEDPTON
 # define HAVE_VPRINTF
 
-#define HAVE_LIMITS_H   1
-#define HAVE_STRDUP     1
-#define HAVE_STRCHR     1
-#define HAVE_FCNTL_H    1
+#define HAVE_LIMITS_H	1
+#define HAVE_STRDUP	1
+#define HAVE_STRCHR	1
+#define HAVE_FCNTL_H	1
+
+#ifndef _INTPTR_T_DEFINED
+typedef long intptr_t;
+#define _INTPTR_T_DEFINED
+#endif
+#define HAVE_INTPTR_T
 
+#ifndef _UINTPTR_T_DEFINED
+typedef unsigned long uintptr_t;
+#define _UINTPTR_T_DEFINED
+#endif
+#define HAVE_UINTPTR_T
+
+#if !defined( _W64 )
+  /*
+   * if DWORD_PTR needs to be defined then the build environment
+   * is pure 32 bit Windows. Since DWORD_PTR and DWORD have 
+   * the same size in 32 bit Windows we can safely define
+   * a replacement.
+   */
+  typedef DWORD DWORD_PTR;
+#endif
+
+#define NEED_S_CHAR_TYPEDEF
 
-# define NEED_S_CHAR_TYPEDEF
+#define USE_PROTOTYPES 		/* for ntp_types.h */
+
+/* Directory separator, usually / or \ */
+#define	DIR_SEP	'\\'
 
-# define USE_PROTOTYPES 		/* for ntp_types.h */														
 
 #define ULONG_CONST(a) a ## UL
 
-# define NOKMEM
-# define RETSIGTYPE void
-# ifndef STR_SYSTEM
-#  define STR_SYSTEM "WINDOWS/NT"
-# endif
+#define NOKMEM
+#define RETSIGTYPE void
+
+#ifndef STR_SYSTEM
+#define STR_SYSTEM "Windows"
+#endif
+
+#ifndef STR_PROCESSOR
+
+#define STRINGIZE(arg)	#arg
+
+#ifdef _M_IX86
+#ifndef _M_IX86_FP
+#define STR_PROCESSOR "x86"
+#else
+#if !_M_IX86_FP 
+#define STR_PROCESSOR "x86"
+#else 
+#if _M_IX86_FP > 2
+#define STR_PROCESSOR "x86-FP-" STRINGIZE(_M_IX86_FP)
+#else
+#if _M_IX86_FP == 2
+#define STR_PROCESSOR "x86-SSE2"
+#else
+#define STR_PROCESSOR "x86-SSE"
+#endif /* _M_IX86 == 2 */
+#endif /* _M_IX86_FP > 2 */
+#endif /* !_M_IX86_FP */
+#endif /* !defined(_M_IX86_FP) */
+#endif /* !defined(_M_IX86) */
+
+#ifdef _M_IA64
+#define STR_PROCESSOR "Itanium"
+#endif
+
+#ifdef _M_X64
+#define STR_PROCESSOR "x64"
+#endif
+
+#endif /* !defined(STR_PROCESSOR) */
+
 #define  SIOCGIFFLAGS SIO_GET_INTERFACE_LIST /* used in ntp_io.c */
 
-/* Include Windows headers */
-#include <windows.h>
-#include <winsock2.h>
+/*
+ * _beginthreadex takes sames args as CreateThread but 
+ * initializes per-thread CRT state before invoking the
+ * thread function, and calls _endthreadex on its
+ * return instead of ExitThread.  _MSC_VER 1200 is VC6,
+ * it probably goes back further so the test might
+ * need changing if someone builds with ancient MSC.
+ */
+#if !defined(_MSC_VER) || (_MSC_VER < 1200)
+#define _beginthreadex CreateThread
+#define _endthreadex ExitThread
+#endif
+
+/*
+ * Below this line are includes which must happen after the bulk of
+ * config.h is processed.  If you need to add another #include to this
+ * file the preferred location is near the top, above the similar
+ * line of hyphens.
+ * ---------------------------------------------------------------------
+ */
+
+/*
+ * Include standard stat information
+ */
+#include <isc/stat.h>
+#include <ntp_rfc2553.h>
 
-#endif /* __config */
+#endif /* __CONFIG_H */

#### ChangeSet ####
2009-02-21 07:45:56-05:00, utterback at pogo.udel.edu 
  configure.ac, ChangeLog:
    [BUG 1131] UDP sockets should not use SIGPOLL on Solaris.

==== ChangeLog ====
2009-02-20 12:30:18-05:00, utterback at pogo.udel.edu +2 -0
  [BUG 1131] UDP sockets should not use SIGPOLL on Solaris.

--- 1.50/ChangeLog	2009-01-08 06:21:25 -05:00
+++ 1.50.2.1/ChangeLog	2009-02-20 12:30:18 -05:00
@@ -1,3 +1,5 @@
+* [BUG 1131] UDP sockets should not use SIGPOLL on Solaris.
+
 ---
 (4.2.4p6) 2009/01/08 Released by Harlan Stenn <stenn at ntp.org>
 

==== configure.ac ====
2009-02-20 11:30:02-05:00, utterback at pogo.udel.edu +3 -0
  [BUG 1131] UDP sockets should not use SIGPOLL on Solaris.

--- 1.401/configure.ac	2008-04-11 18:41:47 -04:00
+++ 1.402/configure.ac	2009-02-20 11:30:02 -05:00
@@ -1758,6 +1758,9 @@ case "$ac_cv_hdr_def_sigpoll" in
      *-*-sunos*)
 	ans=no
 	;;
+     *-*-solaris*)
+	ans=no
+	;;
      *-*-ultrix*)
         ans=no
         ;;

#### ChangeSet ####
2009-02-07 21:13:17+00:00, hart at pogo.udel.edu 
  ChangeLog:
    formatting of newest line

==== ChangeLog ====
2009-02-07 21:12:26+00:00, hart at pogo.udel.edu +1 -1
  formatting of newest line

--- 1.50.1.1/ChangeLog	2009-02-07 16:04:52 -05:00
+++ 1.50.1.2/ChangeLog	2009-02-07 16:12:26 -05:00
@@ -1,4 +1,4 @@
-[BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU
+* [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU
 
 ---
 (4.2.4p6) 2009/01/08 Released by Harlan Stenn <stenn at ntp.org>

#### ChangeSet ####
2009-02-07 21:05:32+00:00, hart at pogo.udel.edu 
  nt_clockstuff.c, ChangeLog, ntp_iocompletionport.c:
    [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU

==== ChangeLog ====
2009-02-07 21:04:52+00:00, hart at pogo.udel.edu +2 -0
  [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU

--- 1.50/ChangeLog	2009-01-08 06:21:25 -05:00
+++ 1.50.1.1/ChangeLog	2009-02-07 16:04:52 -05:00
@@ -1,3 +1,5 @@
+[BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU
+
 ---
 (4.2.4p6) 2009/01/08 Released by Harlan Stenn <stenn at ntp.org>
 

==== ports/winnt/ntpd/nt_clockstuff.c ====
2009-02-07 21:02:04+00:00, hart at pogo.udel.edu +89 -22
  [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU

--- 1.23/ports/winnt/ntpd/nt_clockstuff.c	2006-10-10 12:15:44 -04:00
+++ 1.24/ports/winnt/ntpd/nt_clockstuff.c	2009-02-07 16:02:04 -05:00
@@ -92,6 +92,7 @@ static LONGLONG ls_elapsed;
 
 static void StartClockThread(void);
 static void StopClockThread(void);
+void lock_thread_to_processor(HANDLE);
 
 
 static CRITICAL_SECTION TimerCritialSection; /* lock for LastTimerCount & LastTimerTime */
@@ -507,18 +508,6 @@ DWORD WINAPI ClockThread(void *arg)
 
 	(void) arg; /* not used */
 
-	/*++++ Gerhard Junker
-	* see Platform SDK for QueryPerformanceCounter
-	* On a multiprocessor machine, it should not matter which processor is called. 
-	* However, you can get different results on different processors due to bugs in the BIOS or the HAL. 
-	* To specify processor affinity for a thread, use the SetThreadAffinityMask function. 
-	* ... we will hope, the apc routine will run on the same processor
-	*/
-
-	SetThreadAffinityMask(GetCurrentThread(), 1L);
-
-	/*---- Gerhard Junker */
-
 	if (WaitableTimerHandle != NULL) {
 		DueTime.QuadPart = 0i64;
 		if (SetWaitableTimer(WaitableTimerHandle, &DueTime, 1L /* ms */, TimerApcFunction, &WaitableTimerHandle, FALSE) != NO_ERROR) {
@@ -577,20 +566,98 @@ static void StartClockThread(void)
 	InitializeCriticalSection(&TimerCritialSection);
 	TimerThreadExitRequest = CreateEvent(NULL, FALSE, FALSE, "TimerThreadExitRequest");
 
-	ClockThreadHandle = CreateThread(NULL, 0, ClockThread, NULL, 0, &tid);
-	if (ClockThreadHandle != NULL)
-	{
+	ClockThreadHandle = CreateThread(NULL, 0, ClockThread, NULL, 
+		CREATE_SUSPENDED, &tid);
+
+	if (ClockThreadHandle != NULL) {
 		/* remember the thread priority is only within the process class */
-		if (!SetThreadPriority(ClockThreadHandle, THREAD_PRIORITY_TIME_CRITICAL)) 
-		{
-#ifdef DEBUG
-			printf("Error setting thread priority\n");
-#endif
-		  }
+		if (!SetThreadPriority(ClockThreadHandle, THREAD_PRIORITY_TIME_CRITICAL)) {
+			DPRINTF(1, ("Error setting thread priority\n"));
+		}
+
+		lock_thread_to_processor(ClockThreadHandle);
+		ResumeThread(ClockThreadHandle);
+
+		lock_thread_to_processor(GetCurrentThread());
+
+		atexit( StopClockThread );
 	}
+}
 
-	atexit( StopClockThread );
+
+void
+lock_thread_to_processor(HANDLE thread)
+{
+	static	DWORD_PTR	ProcessAffinityMask;
+	static	DWORD_PTR	ThreadAffinityMask;
+	DWORD_PTR		SystemAffinityMask;
+	char			*cputext;
+	unsigned int		cpu;
+
+	if ( ! ProcessAffinityMask) {
+		/*
+		 * Choose which processor to nail the main and clock threads to.
+		 * If we have more than one, we simply choose the 2nd.
+		 * Randomly choosing from 2 to n would be better, but in
+		 * either case with clock and network interrupts more likely
+		 * to be serviced by the first procecssor, let's stay away 
+		 * from it.  QueryPerformanceCounter is not necessarily
+		 * consistent across CPUs, hence the need to nail the two
+		 * threads involved in QPC-based interpolation to the same
+		 * CPU.
+		 */
+
+		GetProcessAffinityMask(
+			GetCurrentProcess(), 
+			&ProcessAffinityMask,
+			&SystemAffinityMask);
+
+		/*
+		 * respect NTPD_CPU environment variable if present
+		 * for testing.  NTPD_CPU=0 means use all CPUs, 1-64
+		 * means lock threads involved in interpolation to
+		 * that CPU.  Default to 2nd if more than 1.
+		 */
+
+		cpu = 2;
+		cputext = getenv("NTPD_CPU");
+		if (cputext) {
+			cpu = (unsigned int) atoi(cputext);
+			cpu = min((8 * sizeof(DWORD_PTR)), cpu);
+		}
+
+		/* 
+		 * Clear all bits except the 2nd.  If we have only one proc
+		 * that leaves ThreadAffinityMask zeroed and we won't bother
+		 * with SetThreadAffinityMask.
+		 */
+
+		ThreadAffinityMask = (0 == cpu) ? 0 : (1 << (cpu - 1));
+
+		if (ThreadAffinityMask && 
+			!(ThreadAffinityMask & ProcessAffinityMask)) {
+
+			DPRINTF(1, ("Selected CPU %u (mask %x) is outside "
+					"process mask %x, using all CPUs.\n",
+					cpu, ThreadAffinityMask, 
+					ProcessAffinityMask));
+		} else {
+			DPRINTF(1, ("Wiring to processor %u (0 means all) "
+					"affinity mask %x\n",	
+					cpu, ThreadAffinityMask));
+		}
+
+		ThreadAffinityMask &= ProcessAffinityMask;
+	}
+
+	if (ThreadAffinityMask && 
+		!SetThreadAffinityMask(thread, ThreadAffinityMask)) {
+		
+		DPRINTF(1, ("Unable to wire thread to mask %x: %s\n", 
+			ThreadAffinityMask, strerror(GetLastError())));
+	}
 }
+
 
 static void StopClockThread(void)
 {	

==== ports/winnt/ntpd/ntp_iocompletionport.c ====
2009-02-07 21:03:34+00:00, hart at pogo.udel.edu +12 -0
  [BUG 1124] Lock QueryPerformanceCounter() client threads to same CPU

--- 1.26/ports/winnt/ntpd/ntp_iocompletionport.c	2008-08-05 03:56:08 -04:00
+++ 1.27/ports/winnt/ntpd/ntp_iocompletionport.c	2009-02-07 16:03:34 -05:00
@@ -42,6 +42,9 @@ typedef struct IoCompletionInfo {
 #define	recv_buf	buff_space.rbuf
 #define	trans_buf	buff_space.tbuf
 
+/* in nt_clockstuff.c */
+extern void lock_thread_to_processor(HANDLE);
+
 /*
  * local function definitions
  */
@@ -146,6 +149,15 @@ iocompletionthread(void *NotUsed)
 	DWORD BytesTransferred = 0;
 	DWORD Key = 0;
 	IoCompletionInfo * lpo = NULL;
+
+	/*
+	 *	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

#### ChangeSet ####
2009-02-07 14:08:35-05:00, hart at pogo.udel.edu 
  ChangeLog:
    DPRINTF safer

==== ChangeLog ====
2009-02-07 14:07:34-05:00, hart at pogo.udel.edu +2 -0
  DPRINTF safer

--- 1.50/ChangeLog	2009-01-08 06:21:25 -05:00
+++ 1.51/ChangeLog	2009-02-07 14:07:34 -05:00
@@ -1,3 +1,5 @@
+* 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 at ntp.org>
 

#### ChangeSet ####
2009-02-06 19:00:15-05:00, hart at pogo.udel.edu 
  ntp_debug.h:
    DPRINTF won't eat following else, always evaluates to a statement
  ntp_io.c:
    DPRINTF_INTERFACE always evaluates to a statement
    fix DPRINTF use with misplaced semicolon

==== include/ntp_debug.h ====
2009-02-06 18:50:27-05:00, hart at pogo.udel.edu +6 -4
  DPRINTF won't eat following else, always evaluates to a statement

--- 1.1/include/ntp_debug.h	2005-08-21 15:13:08 -04:00
+++ 1.2/include/ntp_debug.h	2009-02-06 18:50:27 -05:00
@@ -13,11 +13,13 @@
  */
 
 #ifdef DEBUG
-#define DPRINTF(_lvl_, _arg_)                   \
-        if (debug >= (_lvl_))                   \
-                printf _arg_;
+#define DPRINTF(_lvl_, _arg_)				\
+	do { 						\
+		if (debug >= (_lvl_))			\
+			printf _arg_;			\
+	} while (0)
 #else
-#define DPRINTF(_lvl_, _arg_)
+#define DPRINTF(_lvl_, _arg_)	do {} while (0)
 #endif
 
 #endif

==== ntpd/ntp_io.c ====
2009-02-06 18:53:58-05:00, hart at pogo.udel.edu +2 -2
  DPRINTF_INTERFACE always evaluates to a statement
  fix DPRINTF use with misplaced semicolon

--- 1.256/ntpd/ntp_io.c	2008-04-03 09:19:00 -05:00
+++ 1.257/ntpd/ntp_io.c	2009-02-06 18:53:58 -05:00
@@ -194,7 +194,7 @@ static	isc_boolean_t	socket_multicast_di
 static void print_interface	P((struct interface *, char *, char *));
 #define DPRINT_INTERFACE(_LVL_, _ARGS_) do { if (debug >= (_LVL_)) { print_interface _ARGS_; } } while (0)
 #else
-#define DPRINT_INTERFACE(_LVL_, _ARGS_)
+#define DPRINT_INTERFACE(_LVL_, _ARGS_) do {} while (0)
 #endif
 
 typedef struct vsock vsock_t;
@@ -3207,7 +3207,7 @@ findlocalinterface(
 	struct interface *iface;
 
 	DPRINTF(4, ("Finding interface for addr %s in list of addresses\n",
-		    stoa(addr));)
+		    stoa(addr)));
 
 	memset(&saddr, 0, sizeof(saddr));
 	saddr.ss_family = addr->ss_family;


More information about the bk-ntp-stable-send mailing list