diff --git a/usr.sbin/tcpdump/tcpslice/tcpslice.c b/usr.sbin/tcpdump/tcpslice/tcpslice.c index 25d245b471a4..2c468063fe3d 100644 --- a/usr.sbin/tcpdump/tcpslice/tcpslice.c +++ b/usr.sbin/tcpdump/tcpslice/tcpslice.c @@ -27,7 +27,7 @@ static const char copyright[] = #ifndef lint static const char rcsid[] = - "$Id: tcpslice.c,v 1.5 1998/01/20 07:30:27 charnier Exp $"; + "$Id: tcpslice.c,v 1.6 1999/01/15 05:46:28 imp Exp $"; #endif /* not lint */ /* @@ -325,9 +325,6 @@ fill_tm(char *time_string, int is_delta, struct tm *t, time_t *usecs_addr) { char *t_start, *t_stop, format_ch; int val; - struct timeval now; - struct timezone tz; - struct tm tmnow; #define SET_VAL(lhs,rhs) \ if (is_delta) \ @@ -335,10 +332,6 @@ fill_tm(char *time_string, int is_delta, struct tm *t, time_t *usecs_addr) else \ lhs = rhs - if (gettimeofday(&now, &tz) < 0) - err(1, "gettimeofday"); - tmnow = *localtime(&now.tv_sec); - /* Loop through the time string parsing one specification at * a time. Each specification has the form * where indicates the amount of time and @@ -363,10 +356,12 @@ fill_tm(char *time_string, int is_delta, struct tm *t, time_t *usecs_addr) switch (format_ch) { case 'y': - if ( val > 1900 ) + if ( val >= 1900 ) val -= 1900; - else if (val < 100) - val += (tmnow.tm_year / 100) * 100; + else if (val < 100 && !is_delta) { + if (val < 69) /* Same hack as date */ + val += 100; + } SET_VAL(t->tm_year, val); break;