]> git.ipfire.org Git - thirdparty/ntp.git/commitdiff
Bug #685: Changes for MM timer and code cleanup
authorDanny Mayer <mayer@ntp.org>
Fri, 18 Aug 2006 11:58:19 +0000 (07:58 -0400)
committerDanny Mayer <mayer@ntp.org>
Fri, 18 Aug 2006 11:58:19 +0000 (07:58 -0400)
bk: 44e5ab5bAbYwRRrs40bmEn0jsKsTkA

include/ntpd.h
ntpd/cmd_args.c
ntpd/ntp_timer.c
ntpd/ntpd.c
ntpd/ntpdbase-opts.def
ports/winnt/include/clockstuff.h
ports/winnt/include/config.h
ports/winnt/ntpd/nt_clockstuff.c
ports/winnt/ntpd/ntpd.dsp

index 65e937af433bc15109a5acaead71eeb294ac5ed3..7651331aced12d2767f1a558426166d62b77131c 100644 (file)
@@ -11,9 +11,6 @@
 #include "ntp_refclock.h"
 #include "recvbuff.h"
 
-#ifdef SYS_WINNT
-#define sleep(x) Sleep((DWORD) x * 1000 /* milliseconds */ );
-#endif /* SYS_WINNT */
 
 /* ntp_config.c */
 extern void    getconfig       P((int, char **));
index f4c9dbd46820084a5bb4b51deb1efdcb94bed9d6..f89e37be031742da8ddb597380e75af89ccae231 100644 (file)
@@ -79,14 +79,6 @@ getCmdOpts(
        if (HAVE_OPT( DRIFTFILE ))
                stats_config(STATS_FREQ_FILE, OPT_ARG( DRIFTFILE ));
 
-/*
- * Enable the Multi-Media Timer for Windows?
- */
-#ifdef WINNT
-       if (HAVE_OPT( ENABLEMMTIMER ))
-               enable_mm_timer();
-#endif
-
        if (HAVE_OPT( PANICGATE ))
                allow_panic = TRUE;
 
index bffec92156bdf5c0c3107ea0ad988821d0b039e7..bd01745b07694074f0ff04cf67af427afa7db688 100644 (file)
@@ -141,7 +141,7 @@ void
 init_timer(void)
 {
 # if defined SYS_WINNT & !defined(SYS_CYGWIN32)
-       HANDLE hToken;
+       HANDLE hToken = INVALID_HANDLE_VALUE;
        TOKEN_PRIVILEGES tkp;
 # endif /* SYS_WINNT */
 
index 37b8370f436e2b44a83772e42e5f87aee162bd46..29feb2f432cae9136d66beab8b59738db17a0bd2 100644 (file)
@@ -515,13 +515,6 @@ ntpdmain(
        }
 #endif
 
-#ifdef SYS_WINNT
-       /*
-        * Initialize the time structures and variables
-        */
-       init_winnt_time();
-#endif
-
        /* getstartup(argc, argv); / * startup configuration, may set debug */
 
 #ifdef DEBUG
@@ -530,6 +523,14 @@ ntpdmain(
            printf("%s\n", Version);
 #endif
 
+/*
+ * Enable the Multi-Media Timer for Windows?
+ */
+#ifdef SYS_WINNT
+       if (HAVE_OPT( MODIFYMMTIMER ))
+               set_mm_timer(MM_TIMER_HIRES);
+#endif
+
        if (HAVE_OPT( NOFORK ) || HAVE_OPT( QUIT ))
                nofork = 1;
 
@@ -561,6 +562,13 @@ ntpdmain(
        }
 #endif
 
+#ifdef SYS_WINNT
+       /*
+        * Initialize the time structures and variables
+        */
+       init_winnt_time();
+#endif
+
        setup_logfile();
 
        /*
index 63aa4eb06acc7c8cf11e2e22817489863f9b904b..a4d0c3d62f4bfc2ad7328a92ab7381ad685e7f6a 100644 (file)
@@ -207,11 +207,12 @@ flag = {
 };
 
 flag = {
-    name      = enablemmtimer;
+    ifdef     = SYS_WINNT;
+    name      = modifymmtimer;
     value     = M;
-    descrip   = "Enable Multimedia Timer (Windows only)";
+    descrip   = "Modify Multimedia Timer (Windows only)";
     doc = <<-  _EndOfDoc_
-       Enable the Multimedia Timer for Windows.
+       Set the Windows Multimedia Timer to highest resolution.
        _EndOfDoc_;
 };
 
index 2815baede34c19eef96867008b47e58e3ab4ee7d..d578664889e3eed89ecf1ec218c2def2cf77fa9d 100644 (file)
@@ -23,4 +23,15 @@ void reset_winnt_time(void);
 
 #define FILETIME_1970     0x019db1ded53e8000
 #define HECTONANOSECONDS  10000000ui64
+
+/*
+ * Multimedia Timer
+ */
+
+void set_mm_timer(int);
+
+enum {
+       MM_TIMER_LORES,
+       MM_TIMER_HIRES
+};
 #endif
index cab862e9a8fdb03e625039669d0d04c26ed36e0d..69982287f4017adf30f66e0710e8699df36deb67 100644 (file)
@@ -25,7 +25,7 @@
 
 #pragma warning(disable: 4100) /* unreferenced formal parameter */
 #pragma warning(disable: 4101) /* unreferenced local variable */
-#pragma warning(disable : 4127)
+#pragma warning(disable: 4127) /* conditional expression is constant */
 
 /*
  * Windows NT Configuration Values
 #define MAXHOSTNAMELEN 64
 #define AUTOKEY
 
+/*
+ * Multimedia timer enable
+ */
+#define USE_MM_TIMER
+
 /* Enable OpenSSL */
 #define OPENSSL 1
 
 #define lseek   _lseek
 #define pipe    _pipe
 #define dup2    _dup2
+#define sleep(x) Sleep((DWORD) x * 1000 /* milliseconds */ );
 
 #define pid_t  int             /* PID is an int */
 #define ssize_t        int             /* ssize is an int */
index 76714c86af94d1cbbf3d519a8bb92135b80d6bdf..3f95ab60d8052adc59c7091f24b7f52c7d224351 100644 (file)
@@ -60,7 +60,7 @@
    * by the variable below which is initialized by a default value but 
    * might be changed depending on a command line switch.
    */
-  int modify_mm_timer = 0;
+  int modify_mm_timer = MM_TIMER_LORES;
 
   #define MM_TIMER_INTV   1  /* the interval we'd want to set the MM timer to [ms] */
 
@@ -115,9 +115,9 @@ static DOUBLE ppm_per_adjust_unit = 0.0;
  * Request Multimedia Timer
  */
 void
-enable_mm_timer()
+set_mm_timer(int timerres)
 {
-       modify_mm_timer = 1;
+       modify_mm_timer = timerres;
 }
 /*
  * adj_systime - called once every second to make system time adjustments.
@@ -280,7 +280,7 @@ adj_systime(
 void init_winnt_time(void)
 {
        BOOL noslew;
-       HANDLE hToken;
+       HANDLE hToken = INVALID_HANDLE_VALUE;
        TOKEN_PRIVILEGES tkp;
 
        /*
index cf52b257016b871d1f955041a9144b302bbb4678..cd83aad459846ac06dfa122b5159b5299e187828 100644 (file)
@@ -50,7 +50,7 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ws2_32.lib $(OPENSSL)\out32dll\libeay32.lib /nologo /subsystem:console /machine:I386 /out:"../bin/Release/ntpd.exe"
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ws2_32.lib winmm.lib $(OPENSSL)\out32dll\libeay32.lib /nologo /subsystem:console /machine:I386 /out:"../bin/Release/ntpd.exe"
 
 !ELSEIF  "$(CFG)" == "ntpd - Win32 Debug"
 
@@ -75,7 +75,7 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ws2_32.lib $(OPENSSL)\out32dll\libeay32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../bin/Debug/ntpd.exe" /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ws2_32.lib winmm.lib $(OPENSSL)\out32dll\libeay32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../bin/Debug/ntpd.exe" /pdbtype:sept
 
 !ENDIF 
 
@@ -204,14 +204,30 @@ SOURCE=..\..\..\include\ascii.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\..\include\isc\assertions.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\binio.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\..\include\isc\boolean.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\include\clockstuff.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\include\config.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\hopf_PCI_io.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\ieee754io.h
 # End Source File
 # Begin Source File
@@ -224,6 +240,22 @@ SOURCE=..\include\arpa\inet.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\isc\int.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\include\isc\interfaceiter.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\include\iosignal.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\include\isc\ipv6.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\ntpd\jupiter.h
 # End Source File
 # Begin Source File
@@ -240,6 +272,14 @@ SOURCE=..\..\..\include\mbg_gps166.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\isc\net.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\include\isc\netaddr.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\include\netdb.h
 # End Source File
 # Begin Source File
@@ -252,10 +292,22 @@ SOURCE=..\..\..\include\ntp_calendar.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\..\include\ntp_cmdargs.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\include\ntp_config.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\ntp_control.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\..\include\ntp_debug.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\ntp_filegen.h
 # End Source File
 # Begin Source File
@@ -272,6 +324,10 @@ SOURCE=..\..\..\include\ntp_io.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\ntp_iocompletionport.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\ntp_machine.h
 # End Source File
 # Begin Source File
@@ -296,6 +352,10 @@ SOURCE=..\..\..\include\ntp_request.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\..\include\ntp_rfc2553.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\ntp_select.h
 # End Source File
 # Begin Source File
@@ -312,6 +372,14 @@ SOURCE=..\..\..\include\ntp_syslog.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\ntp_timer.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\include\ntp_tty.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\ntp_types.h
 # End Source File
 # Begin Source File
@@ -320,18 +388,42 @@ SOURCE=..\..\..\include\ntp_unixtime.h
 # End Source File
 # Begin Source File
 
+SOURCE="..\..\..\ntpd\ntpd-opts.h"
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\ntpd.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\ntservice.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\include\isc\offset.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\libopts\autoopts\options.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\include\sys\param.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\isc\platform.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\..\include\recvbuff.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\..\include\isc\result.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\include\sys\socket.h
 # End Source File
 # Begin Source File
@@ -340,6 +432,10 @@ SOURCE=..\include\syslog.h
 # End Source File
 # Begin Source File
 
+SOURCE=..\include\termios.h
+# End Source File
+# Begin Source File
+
 SOURCE=..\include\transmitbuff.h
 # End Source File
 # Begin Source File
@@ -350,6 +446,10 @@ SOURCE=..\include\sys\wait.h
 
 SOURCE=..\include\win32_io.h
 # End Source File
+# Begin Source File
+
+SOURCE=..\include\isc\win32os.h
+# End Source File
 # End Group
 # Begin Group "Generated Files"