version 1.8, 1996/12/23 04:58:10 |
version 1.9, 1997/06/30 23:54:07 |
|
|
|
|
static PLAN *palloc __P((enum ntype, int (*) __P((PLAN *, FTSENT *)))); |
static PLAN *palloc __P((enum ntype, int (*) __P((PLAN *, FTSENT *)))); |
|
|
|
extern int dotfd; |
|
extern time_t now; |
|
extern FTS *tree; |
|
|
/* |
/* |
* find_parsenum -- |
* find_parsenum -- |
* Parse a string of the form [+-]# and return the value. |
* Parse a string of the form [+-]# and return the value. |
|
|
PLAN *plan; |
PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern time_t now; |
|
|
|
COMPARE((now - entry->fts_statp->st_atime + |
COMPARE((now - entry->fts_statp->st_atime + |
SECSPERDAY - 1) / SECSPERDAY, plan->t_data); |
SECSPERDAY - 1) / SECSPERDAY, plan->t_data); |
|
|
PLAN *plan; |
PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern time_t now; |
|
|
|
COMPARE((now - entry->fts_statp->st_ctime + |
COMPARE((now - entry->fts_statp->st_ctime + |
SECSPERDAY - 1) / SECSPERDAY, plan->t_data); |
SECSPERDAY - 1) / SECSPERDAY, plan->t_data); |
|
|
register PLAN *plan; |
register PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern int dotfd; |
|
register int cnt; |
register int cnt; |
pid_t pid; |
pid_t pid; |
int status; |
int status; |
|
|
register PLAN *plan; |
register PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern int dotfd; |
|
register int cnt; |
register int cnt; |
pid_t pid; |
pid_t pid; |
int status; |
int status; |
|
|
*/ |
*/ |
if (entry->fts_info == FTS_SL || |
if (entry->fts_info == FTS_SL || |
entry->fts_info == FTS_SLNONE) { |
entry->fts_info == FTS_SLNONE) { |
if (p = strrchr(entry->fts_accpath, '/')) |
if ((p = strrchr(entry->fts_accpath, '/'))) |
++p; |
++p; |
else |
else |
p = entry->fts_accpath; |
p = entry->fts_accpath; |
|
|
PLAN *plan; |
PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern FTS *tree; |
|
|
|
if (entry->fts_level >= plan->max_data) |
if (entry->fts_level >= plan->max_data) |
fts_set(tree, entry, FTS_SKIP); |
fts_set(tree, entry, FTS_SKIP); |
|
|
PLAN *plan; |
PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern FTS *tree; |
|
|
|
return (entry->fts_level >= plan->min_data); |
return (entry->fts_level >= plan->min_data); |
} |
} |
|
|
PLAN *plan; |
PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern time_t now; |
|
|
|
COMPARE((now - entry->fts_statp->st_mtime + SECSPERDAY - 1) / |
COMPARE((now - entry->fts_statp->st_mtime + SECSPERDAY - 1) / |
SECSPERDAY, plan->t_data); |
SECSPERDAY, plan->t_data); |
|
|
} |
} |
|
|
/* ARGSUSED */ |
/* ARGSUSED */ |
|
int |
f_print0(plan, entry) |
f_print0(plan, entry) |
PLAN *plan; |
PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
|
|
PLAN *plan; |
PLAN *plan; |
FTSENT *entry; |
FTSENT *entry; |
{ |
{ |
extern FTS *tree; |
|
|
|
if (fts_set(tree, entry, FTS_SKIP)) |
if (fts_set(tree, entry, FTS_SKIP)) |
err(1, "%s", entry->fts_path); |
err(1, "%s", entry->fts_path); |
|
|
{ |
{ |
PLAN *new; |
PLAN *new; |
|
|
if (new = malloc(sizeof(PLAN))) { |
if ((new = malloc(sizeof(PLAN)))) { |
new->type = t; |
new->type = t; |
new->eval = f; |
new->eval = f; |
new->flags = 0; |
new->flags = 0; |