usr.sbin/atm/atmarpd/atmarp_timer.c
void
atmarp_cache_timeout(Harp_timer *tp)
{
	Atmarp_intf	*aip;

	/*
	 * Verify the status of all configured interfaces
	 */
	for (aip = atmarp_intf_head; aip; aip = aip->ai_next) {
		if (atmarp_if_ready(aip)) {
			/*
			 * The interface is up but we don't have
			 * a connection to SCSP--make a connection
			 */
			if (aip->ai_state == AI_STATE_NULL)
				atmarp_scsp_connect(aip);
		} else {
			/*
			 * The interface is down--disconnect from SCSP
			 */
			if (aip->ai_state != AI_STATE_NULL)
				atmarp_scsp_disconnect(aip);
		}
	}

	/*
	 * Read the cache from the kernel
	 */
	atmarp_get_updated_cache();

	/*
	 * Restart the cache update timer
	 */
	HARP_TIMER(tp, ATMARP_CACHE_INTERVAL, atmarp_cache_timeout);
}
/*
 * Cache update timeout processing
 *
 * When the cache update timer fires, we read the cache from the
 * kernel, update the internal cache, and restart the timer.
 *
 * Arguments:
 *	tp	pointer to a HARP timer block
 *
 * Returns:
 *	None
 *
 */
Cache update timeout processing
When the cache update timer fires, we read the cache from the
kernel, update the internal cache, and restart the timer.

tp      pointer to a HARP timer block

None
Cache update timeout processing When the cache update timer fires we read the cache from the kernel update the internal cache and restart the timer . tp pointer to a HARP timer block None
void
atmarp_cache_timeout(Harp_timer *tp)
{
	Atmarp_intf	*aip;
	for (aip = atmarp_intf_head; aip; aip = aip->ai_next) {
		if (atmarp_if_ready(aip)) {
			if (aip->ai_state == AI_STATE_NULL)
				atmarp_scsp_connect(aip);
		} else {
			if (aip->ai_state != AI_STATE_NULL)
				atmarp_scsp_disconnect(aip);
		}
	}
	atmarp_get_updated_cache();
	HARP_TIMER(tp, ATMARP_CACHE_INTERVAL, atmarp_cache_timeout);
}
void atmarp_cache_timeout ( Harp_timer * tp ) { Atmarp_intf * aip ; for ( aip = atmarp_intf_head ; aip ; aip = aip -> ai_next ) { if ( atmarp_if_ready ( aip ) ) { if ( aip -> ai_state == AI_STATE_NULL ) atmarp_scsp_connect ( aip ) ; } else { if ( aip -> ai_state != AI_STATE_NULL ) atmarp_scsp_disconnect ( aip ) ; } } atmarp_get_updated_cache ( ) ; HARP_TIMER ( tp , ATMARP_CACHE_INTERVAL , atmarp_cache_timeout ) ; }
Cache update timeout processing
 When the cache update timer fires, we read the cache from the
 kernel, update the internal cache, and restart the timer.
Cache update timeout processing When the cache update timer fires we read the cache from the kernel update the internal cache and restart the timer .
/*
	 * Verify the status of all configured interfaces
	 */ /*
			 * The interface is up but we don't have
			 * a connection to SCSP--make a connection
			 */ /*
			 * The interface is down--disconnect from SCSP
			 */ /*
	 * Read the cache from the kernel
	 */ /*
	 * Restart the cache update timer
	 */