svn commit: r216225 - head/usr.sbin/rarpd
Gleb Smirnoff
glebius at FreeBSD.org
Mon Dec 6 09:37:57 UTC 2010
Author: glebius
Date: Mon Dec 6 09:37:56 2010
New Revision: 216225
URL: http://svn.freebsd.org/changeset/base/216225
Log:
Catch up with kernel using time_uptime to drive ARP timeouts.
Noticed by: jilles
Modified:
head/usr.sbin/rarpd/rarpd.c
Modified: head/usr.sbin/rarpd/rarpd.c
==============================================================================
--- head/usr.sbin/rarpd/rarpd.c Mon Dec 6 09:18:11 2010 (r216224)
+++ head/usr.sbin/rarpd/rarpd.c Mon Dec 6 09:37:56 2010 (r216225)
@@ -666,6 +666,7 @@ struct {
static void
update_arptab(u_char *ep, in_addr_t ipaddr)
{
+ struct timespec tp;
int cc;
struct sockaddr_inarp *ar, *ar2;
struct sockaddr_dl *ll, *ll2;
@@ -731,7 +732,8 @@ update_arptab(u_char *ep, in_addr_t ipad
rt->rtm_version = RTM_VERSION;
rt->rtm_addrs = RTA_DST | RTA_GATEWAY;
rt->rtm_inits = RTV_EXPIRE;
- rt->rtm_rmx.rmx_expire = time(0) + ARPSECS;
+ clock_gettime(CLOCK_MONOTONIC, &tp);
+ rt->rtm_rmx.rmx_expire = tp.tv_sec + ARPSECS;
rt->rtm_flags = RTF_HOST | RTF_STATIC;
rt->rtm_type = RTM_ADD;
rt->rtm_seq = ++seq;
More information about the svn-src-all
mailing list