uloop: add uloop_timeout_pending() function to determine the remaining time of an active timeout

This commit is contained in:
Jo-Philipp Wich 2013-01-22 15:50:09 +01:00
parent e009fd8c82
commit 77984bd24d
2 changed files with 13 additions and 0 deletions

12
uloop.c
View file

@ -387,6 +387,18 @@ int uloop_timeout_cancel(struct uloop_timeout *timeout)
return 0; return 0;
} }
int uloop_timeout_pending(struct uloop_timeout *timeout)
{
struct timeval now;
if (!timeout->pending)
return -1;
uloop_gettime(&now);
return tv_diff(&timeout->time, &now);
}
int uloop_process_add(struct uloop_process *p) int uloop_process_add(struct uloop_process *p)
{ {
struct uloop_process *tmp; struct uloop_process *tmp;

View file

@ -87,6 +87,7 @@ int uloop_fd_delete(struct uloop_fd *sock);
int uloop_timeout_add(struct uloop_timeout *timeout); int uloop_timeout_add(struct uloop_timeout *timeout);
int uloop_timeout_set(struct uloop_timeout *timeout, int msecs); int uloop_timeout_set(struct uloop_timeout *timeout, int msecs);
int uloop_timeout_cancel(struct uloop_timeout *timeout); int uloop_timeout_cancel(struct uloop_timeout *timeout);
int uloop_timeout_pending(struct uloop_timeout *timeout);
int uloop_process_add(struct uloop_process *p); int uloop_process_add(struct uloop_process *p);
int uloop_process_delete(struct uloop_process *p); int uloop_process_delete(struct uloop_process *p);