timer.c revision ec5347e2c775f027573ce5648b910361aa926c01
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews * Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * Copyright (C) 2000, 2001 Internet Software Consortium.
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews * Permission to use, copy, modify, and/or distribute this software for any
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews * purpose with or without fee is hereby granted, provided that the above
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * copyright notice and this permission notice appear in all copies.
70e5a7403f0e0a3bd292b8287c5fed5772c15270Automatic Updater * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * PERFORMANCE OF THIS SOFTWARE.
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer/* $Id: timer.c,v 1.6 2007/06/18 23:47:41 tbox Exp $ */
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayerdns_timer_setidle(isc_timer_t *timer, unsigned int maxtime,
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer /* Compute the time of expiry. */
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer CHECK(isc_time_nowplusinterval(&expires, &maxinterval));
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * Compute the idle interval, and add a spare nanosecond to
945f7311ca5ae0005676e3c4e02c712d6f8e7eafAndreas Gustafsson * work around the silly limitation of the ISC timer interface
6f2e507e7e27509af16f5b48cac577fe09b66147Danny Mayer * that you cannot specify an idle interval of zero.