1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-14 10:09:48 +00:00

Fix time of last dump handling.

Submittted by:		Richard Wiwatowski <rjwiwat@ozemail.com.au>
This commit is contained in:
Jordan K. Hubbard 1999-07-02 04:44:43 +00:00
parent e9bc23571b
commit a741b77965
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=48447

View File

@ -36,7 +36,7 @@
static char sccsid[] = "@(#)optr.c 8.2 (Berkeley) 1/6/94"; static char sccsid[] = "@(#)optr.c 8.2 (Berkeley) 1/6/94";
#endif #endif
static const char rcsid[] = static const char rcsid[] =
"$Id: optr.c,v 1.5 1998/06/15 06:58:11 charnier Exp $"; "$Id: optr.c,v 1.6 1999/03/21 23:47:38 jkh Exp $";
#endif /* not lint */ #endif /* not lint */
#include <sys/param.h> #include <sys/param.h>
@ -484,7 +484,8 @@ lastdump(arg)
register struct dumpdates *dtwalk; register struct dumpdates *dtwalk;
char *lastname, *date; char *lastname, *date;
int dumpme; int dumpme;
time_t tnow, then; time_t tnow;
struct tm *tlast;
(void) time(&tnow); (void) time(&tnow);
getfstab(); /* /etc/fstab input */ getfstab(); /* /etc/fstab input */
@ -500,13 +501,17 @@ lastdump(arg)
if (strncmp(lastname, dtwalk->dd_name, if (strncmp(lastname, dtwalk->dd_name,
sizeof(dtwalk->dd_name)) == 0) sizeof(dtwalk->dd_name)) == 0)
continue; continue;
then = 86400 * (dtwalk->dd_ddate / 86400); date = (char *)ctime(&dtwalk->dd_ddate);
date = (char *)ctime(&then);
date[16] = '\0'; /* blast away seconds and year */ date[16] = '\0'; /* blast away seconds and year */
lastname = dtwalk->dd_name; lastname = dtwalk->dd_name;
dt = fstabsearch(dtwalk->dd_name); dt = fstabsearch(dtwalk->dd_name);
dumpme = (dt != NULL && dumpme = (dt != NULL && dt->fs_freq != 0);
dt->fs_freq != 0 && then < tnow - (dt->fs_freq * 86400)); if (dumpme) {
tlast = localtime(&dtwalk->dd_ddate);
dumpme = tnow > (dtwalk->dd_ddate - (tlast->tm_hour * 3600)
- (tlast->tm_min * 60) - tlast->tm_sec
+ (dt->fs_freq * 86400));
};
if (arg != 'w' || dumpme) if (arg != 'w' || dumpme)
(void) printf( (void) printf(
"%c %8s\t(%6s) Last dump: Level %c, Date %s\n", "%c %8s\t(%6s) Last dump: Level %c, Date %s\n",