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