Mercurial > ~mikael > mcabber > hg
comparison mcabber/src/jabglue.c @ 706:934fddc99592
Check for IQ requests timeouts
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Sat, 18 Feb 2006 15:07:51 +0100 |
parents | ee03b56b93ee |
children | b5aa7b7afee8 |
comparison
equal
deleted
inserted
replaced
705:603b43e4f56a | 706:934fddc99592 |
---|---|
168 KeepaliveDelay = delay; | 168 KeepaliveDelay = delay; |
169 } | 169 } |
170 | 170 |
171 void jb_main() | 171 void jb_main() |
172 { | 172 { |
173 time_t now; | |
174 static time_t last_iqs_check = 0; | |
175 | |
173 if (!online) { | 176 if (!online) { |
174 safe_usleep(10000); | 177 safe_usleep(10000); |
175 return; | 178 return; |
176 } | 179 } |
177 | 180 |
209 statehandler(jc, JCONN_STATE_OFF); | 212 statehandler(jc, JCONN_STATE_OFF); |
210 } else if (jc->state == JCONN_STATE_OFF || jc->fd == -1) { | 213 } else if (jc->state == JCONN_STATE_OFF || jc->fd == -1) { |
211 statehandler(jc, JCONN_STATE_OFF); | 214 statehandler(jc, JCONN_STATE_OFF); |
212 } | 215 } |
213 | 216 |
217 time(&now); | |
218 | |
219 // Check for IQ requests timeouts | |
220 if (now > last_iqs_check + 20) { | |
221 iqs_check_timeout(now); | |
222 last_iqs_check = now; | |
223 } | |
224 | |
214 // Keepalive | 225 // Keepalive |
215 if (KeepaliveDelay) { | 226 if (KeepaliveDelay) { |
216 time_t now; | |
217 time(&now); | |
218 if (now > LastPingTime + KeepaliveDelay) | 227 if (now > LastPingTime + KeepaliveDelay) |
219 jb_keepalive(); | 228 jb_keepalive(); |
220 } | 229 } |
221 } | 230 } |
222 | 231 |