Age | Commit message (Collapse) | Author |
|
and calling tail_forever. Required only on Solaris2.7 -- on other
systems, using setvbuf to switch to unbufferd mode does the flush.
|
|
reuse) that would lead to a failed assertion.
Reported by Ken Pizzini.
(tail_forever): Record errno before using it in call to `error'
which might change it.
(tail_file): Likewise.
|
|
(anonymous enum) [LONG_FOLLOW_OPTION]: Define.
(long_options): Use LONG_FOLLOW_OPTION here, instead of 'f'.
(main): Remove the `::' after the `f' in getopt_long string.
Add `case LONG_FOLLOW_OPTION' after `case 'f':'.
Based on a patch from Tim Waugh.
|
|
[MAX_UNCHANGED_STATS_OPTION]: Likewise.
[MAX_CONSECUTIVE_SIZE_CHANGES_OPTION]: Likewise.
[PID_OPTION]: Likewise.
(long_options): Use *_OPTION instead of CHAR_MAX + N.
(main): Likewise.
|
|
(tail_file): Likewise.
|
|
(parse_options): Warn if --pid=PID is used and kill()
returns ENOSYS (e.g. when compiled with DJGPP).
|
|
Reported by Kaveh Ghazi.
|
|
because of exceeding max_n_consecutive_size_changes_between_opens,
`continue' so we don't fall through and (assuming the file finally grew)
get the erroneous `file truncated' message.
|
|
Detect when `writer_is_dead' also when the writer is some other user.
From Karl Heuer.
(parse_options): Warn if --pid=PID is used without -f.
|
|
|
|
(pid): New global.
(long_options): Add `pid'.
(usage): Describe it.
(tail_forever): Implement it.
(parse_options): Handle the new option and required arg.
Suggestion and pseudo-code from Karl Heuer.
|
|
|
|
|
|
|
|
Remove a couple unnecessary FIXME comments.
|
|
document. Change all uses and locals like was_missing to was_tailable.
Invert expressions as appropriate.
(reopen_inaccessible_files): Rename from allow_missing.
(sleep_interval): Describe.
(--allow-missing): Deprecate.
(--retry): New option, equivalent to --allow-missing.
(usage): Document name vs. descriptor differences.
Refer to manual for descriptions of --max-unchanged-stats=N
and --max-consecutive-size-changes=N.
(valid_file_spec): New function.
(recheck): Assert valid_file_spec.
Remove dead else-if block (suggestion from Eli Zaretskii).
Adjust stmts that set f->tailable -- unlike for `missing', tailable
doesn't depend on errno == ENOENT.
(parse_options): Give a warning if --retry is used when not following
by name.
|
|
(recheck): Record the new value of errno in f->errnum. Don't
output an error message unless the new value of errno differs from
the old one. Output a message if previously-inaccessible file
becomes accessible.
(tail_forever): Always recheck files whose fd is negative. If the
file cannot be fstat'ed, record the errno value in f[i].errnum.
(tail_file): If the file cannot be open, record the errno value in
f->errnum. If it can be opened, initialize f->errnum to zero. If
it's a non-regular non-fifo file, initialize f->errnum to -1.
|
|
|
|
From Andreas Schwab.
|
|
(dump_remainder): Add parameter, n_bytes, and rewrite to use it.
Update callers.
(file_lines): Rename parameter.
(tail_bytes): Remove obsolete comment.
|
|
(dump_remainder): Move this function to precede the new use in file_lines.
(tail_lines): Don't call dump_remainder here.
(file_lines): Call dump_remainder here instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Set f->size to 0 upon encountering a new file so we read it from
the beginning rather than from then end of the first line or
block. Otherwise, after a log rotation, tail would omit the first
line or block of the new file. Reported by Ed Avis.
|
|
(main) [if forever]: Make stdout unbuffered, instead.
|
|
[long_options]: Remove the "help" and "version" entries.
Remove declarations of show_help and show_version.
(main): Use parse_long_options, including author name(s).
Remove the show_version and show_help blocks.
|
|
|
|
|
|
|
|
(parse_options): Likewise.
Reported by Kamal Paul Nigam.
New option: --max-unchanged-stats=N.
New option: --max-n-consecutive-size-changes=N.
|
|
|
|
|
|
|
|
(Follow_mode): New enum.
(n_live_files): New function.
(tail_forever): Avoid starvation with --follow=name and a
continually-growing unlinked or renamed file.
|
|
|
|
|
|
|
|
|
|
(pretty_name): New function.
|
|
|
|
|
|
[struct File_spec] (n_stat_calls): New member.
[struct File_spec] (n_unchanged_stats): New member.
(max_n_unchanged_stats): New global.
Initialize new members.
|
|
|
|
(recheck): New function.
Begin to support --allow-missing option.
|
|
Don't close stdin
Don't print header unnecessarily if the first file to grow
is the last one for which a header was printed.
|
|
|