author | tille <tille> | 2002-06-26 17:12:58 (UTC) |
---|---|---|
committer | tille <tille> | 2002-06-26 17:12:58 (UTC) |
commit | 18905bcc671622ab11b4e3d4447e4cd34f7308ee (patch) (unidiff) | |
tree | d239f73841774b4514dea4476109b1e4336124a5 | |
parent | 9d692658a94c59889c6e46baaeae971226952eb8 (diff) | |
download | opie-18905bcc671622ab11b4e3d4447e4cd34f7308ee.zip opie-18905bcc671622ab11b4e3d4447e4cd34f7308ee.tar.gz opie-18905bcc671622ab11b4e3d4447e4cd34f7308ee.tar.bz2 |
network changes
-rw-r--r-- | noncore/settings/netsystemtime/ntp.cpp | 21 | ||||
-rw-r--r-- | noncore/settings/netsystemtime/ntp.h | 3 |
2 files changed, 19 insertions, 5 deletions
diff --git a/noncore/settings/netsystemtime/ntp.cpp b/noncore/settings/netsystemtime/ntp.cpp index b2f5332..6a5c062 100644 --- a/noncore/settings/netsystemtime/ntp.cpp +++ b/noncore/settings/netsystemtime/ntp.cpp | |||
@@ -37,13 +37,12 @@ Ntp::Ntp( QWidget* parent, const char* name, WFlags fl ) | |||
37 | 37 | ||
38 | Config cfg("ntp",Config::User); | 38 | Config cfg("ntp",Config::User); |
39 | cfg.setGroup("settings"); | 39 | cfg.setGroup("settings"); |
40 | // _maxOffset = cfg.readNumEntry("maxOffset",5); | ||
41 | // _minLookupDiff = cfg.readNumEntry("minLookupDiff",10); | ||
42 | SpinBoxMinLookupDelay->setValue( cfg.readNumEntry("minLookupDiff",41) ); | 40 | SpinBoxMinLookupDelay->setValue( cfg.readNumEntry("minLookupDiff",41) ); |
43 | SpinBoxNtpDelay->setValue( cfg.readNumEntry("ntpRefreshFreq",42) ); | 41 | SpinBoxNtpDelay->setValue( cfg.readNumEntry("ntpRefreshFreq",42) ); |
44 | ComboNtpSrv->setCurrentItem( cfg.readNumEntry("ntpServer", 0) ); | 42 | ComboNtpSrv->setCurrentItem( cfg.readNumEntry("ntpServer", 0) ); |
45 | 43 | ||
46 | ntpTimer = new QTimer(this); | 44 | ntpTimer = new QTimer(this); |
45 | processTimer = new QTimer(this); | ||
47 | ntpTimer->start(SpinBoxNtpDelay->value()*1000*60); | 46 | ntpTimer->start(SpinBoxNtpDelay->value()*1000*60); |
48 | 47 | ||
49 | ntpProcess = new OProcess( ); | 48 | ntpProcess = new OProcess( ); |
@@ -116,6 +115,9 @@ void Ntp::slotRunNtp() | |||
116 | } | 115 | } |
117 | TextLabelStartTime->setText(QDateTime::currentDateTime().toString()); | 116 | TextLabelStartTime->setText(QDateTime::currentDateTime().toString()); |
118 | ntpOutPut( tr("Running:")+"\nntpdate "+getNtpServer() ); | 117 | ntpOutPut( tr("Running:")+"\nntpdate "+getNtpServer() ); |
118 | connect( processTimer, SIGNAL( timeout() ), SLOT(slotTimeoutNtpProcess()) ); | ||
119 | processTimer->start(2*1000*60, true); | ||
120 | |||
119 | ntpProcess->clearArguments(); | 121 | ntpProcess->clearArguments(); |
120 | *ntpProcess << "ntpdate" << getNtpServer(); | 122 | *ntpProcess << "ntpdate" << getNtpServer(); |
121 | bool ret = ntpProcess->start(OProcess::NotifyOnExit,OProcess::AllOutput); | 123 | bool ret = ntpProcess->start(OProcess::NotifyOnExit,OProcess::AllOutput); |
@@ -138,8 +140,14 @@ void Ntp::getNtpOutput(OProcess *proc, char *buffer, int buflen) | |||
138 | lineStrOld = lineStr; | 140 | lineStrOld = lineStr; |
139 | } | 141 | } |
140 | 142 | ||
141 | void Ntp::ntpFinished(OProcess*) | 143 | void Ntp::ntpFinished(OProcess *p) |
142 | { | 144 | { |
145 | if (!p->normalExit()) | ||
146 | { | ||
147 | slotProbeNtpServer(); | ||
148 | return; | ||
149 | } | ||
150 | processTimer->stop(); | ||
143 | Config cfg("ntp",Config::User); | 151 | Config cfg("ntp",Config::User); |
144 | cfg.setGroup("lookups"); | 152 | cfg.setGroup("lookups"); |
145 | int lastLookup = cfg.readNumEntry("time",0); | 153 | int lastLookup = cfg.readNumEntry("time",0); |
@@ -261,7 +269,6 @@ void Ntp::slotCheckNtp(int i) | |||
261 | connect( ButtonSetTime, SIGNAL(clicked()), SLOT(setPredictTime()) ); | 269 | connect( ButtonSetTime, SIGNAL(clicked()), SLOT(setPredictTime()) ); |
262 | connect( ntpTimer, SIGNAL( timeout() ), SLOT(slotProbeNtpServer()) ); | 270 | connect( ntpTimer, SIGNAL( timeout() ), SLOT(slotProbeNtpServer()) ); |
263 | } | 271 | } |
264 | //ntpTimer->start(SpinBoxNtpDelay->value()*1000*60); | ||
265 | } | 272 | } |
266 | 273 | ||
267 | void Ntp::slotProbeNtpServer() | 274 | void Ntp::slotProbeNtpServer() |
@@ -279,3 +286,9 @@ void Ntp::ntpOutPut(QString out) | |||
279 | MultiLineEditntpOutPut->append(out); | 286 | MultiLineEditntpOutPut->append(out); |
280 | MultiLineEditntpOutPut->setCursorPosition(MultiLineEditntpOutPut->numLines() + 1,0,FALSE); | 287 | MultiLineEditntpOutPut->setCursorPosition(MultiLineEditntpOutPut->numLines() + 1,0,FALSE); |
281 | } | 288 | } |
289 | |||
290 | void Ntp::slotTimeoutNtpProcess() | ||
291 | { | ||
292 | ntpProcess->kill(); | ||
293 | slotProbeNtpServer(); | ||
294 | } | ||
diff --git a/noncore/settings/netsystemtime/ntp.h b/noncore/settings/netsystemtime/ntp.h index c78dc55..d166973 100644 --- a/noncore/settings/netsystemtime/ntp.h +++ b/noncore/settings/netsystemtime/ntp.h | |||
@@ -25,7 +25,7 @@ private: | |||
25 | float _shiftPerSec; | 25 | float _shiftPerSec; |
26 | int _lookupDiff; | 26 | int _lookupDiff; |
27 | OProcess *ntpProcess; | 27 | OProcess *ntpProcess; |
28 | QTimer *ntpTimer; | 28 | QTimer *ntpTimer, *processTimer; |
29 | QSocket *ntpSock; | 29 | QSocket *ntpSock; |
30 | 30 | ||
31 | float getTimeShift(); | 31 | float getTimeShift(); |
@@ -42,6 +42,7 @@ private slots: | |||
42 | void setPredictTime(); | 42 | void setPredictTime(); |
43 | void slotProbeNtpServer(); | 43 | void slotProbeNtpServer(); |
44 | void slotNtpDelayChanged(int); | 44 | void slotNtpDelayChanged(int); |
45 | void slotTimeoutNtpProcess(); | ||
45 | }; | 46 | }; |
46 | 47 | ||
47 | #endif | 48 | #endif |